프로필사진


2021.09.20

Mac에 XE3 (Xpress Engine 3) 설치하기 (MySQL, PHP, Apache)

반응형

이번 게시글은 이전 게시글에 이어서 조금 정석과 같은 방향으로 맥북에 Xpress Engine(엑스프레스 엔진)을 설치하는 방법에 대해 정리하려고 합니다.

 

XE 버전은 3.0.14 기준으로 작성되었습니다.

MacBook Pro(Intel) + Big Sur기준으로 작성되었으며, Homebrew가 설치되어 있다고 가정합니다.

만약, 설치된 상태가 아니라면 여기에서 설치를 진행하세요.

 


 

1. MySQL 설치

Mac은 기본적으로 PHP 7.2 버전과 Apache 2.4 버전이 설치되어 있으며, 추가로 설치되어야할 부분은 MySQL(혹은 MariaDB)입니다.

터미널에서 다음과 같은 명령어로 MySQL를 설치합니다.

brew install mysql

2. MySQL 설정

아래 명령어와 절차를 통해 MySQL 기본 설정을 진행합니다.

mysql_secure_installation


Would you like to setup VALIDATE PASSWORD component? (패스워드에 복잡한 규칙을 사용하시겠습니까?)
yes

New password // DB 접근시 root 계정에 사용할 패스워드를 입력합니다.

Remove anonymous users? (익명 사용자를 제거하시겠습니까?)
yes

Disallow root login remotely? (원격 접근으로 root 계정 로그인을 막겠습니까?)
no

Remove test database and access to it? (test 데이터 베이스를 제거하시겠습니까?)
yes

Reload privilege tables now? (privilege 테이블을 지금 갱신하시겠습니까?)
yes

아래 명령어를 통해 MySQL를 실행하고, DB 접근 확인 및 XE를 위한 DB를 생성합니다.

(새로 DB를 생성하지 않고 기존 DB를 이용시, SQLSTATE[HY000][2002] No such file or directory 에러가 발생할 수 있습니다.)

mysql.server start
Starting MySQL
SUCCESS!

mysql -uroot -p
Enter password:

mysql> create database xe character set utf8mb4 collate utf8mb4_general_ci
Query OK, 1 row affected (0.00 sec)

mysql> exit

3. composer 설치

XE3의 경우 composer를 통해 간편 설치를 지원합니다. 맥북에서는 해당 라이브러리가 기본 설치가 아님으로 설치를 진행해야합니다. 지금은 composer가 2버전이 출시되어 brew로 기본 설치시, 2버전이 설치되지만, XE3의 경우 composer 1 버전만 지원됩니다.

composer 2버전 설치시, requires composer-plugin-api 1.0.0 -> no matching package found. 에러가 발생합니다.

현재 composer 2 버전 적용에 대해 긍정적인 검토를 진행 중이기 때문에 이후 버전에서는 composer2가 사용될 가능성이 있습니다.

 

터미널에서 다음과 같은 명령어로 composer 1버전을 설치합니다.

brew install composer
composer self-update 1.10.15

4. PHP ZipArchive 확장 설치

Mac에 기본으로 설치된 PHP의 경우, zipArchive가 기본적으로 설치가 되어 있지 않아 새로운 버전을 설치 해야합니다.

아래 명령어를 통해 PHP 7.3.30 버전을 설치합니다. PHP 7.3은 기본적으로 zip이 세팅되어 있습니다.

brew install php@7.3
brew link php@7.3

5. Apache 설정 (PHP 연동)

맥북에는 Apache와 PHP가 기본적으로 설치되어 있지만, 서로 연동 설정은 되어있지 않습니다.

이 다음 부터는 su 권한으로 진행하는 경우가 많습니다. 만약, su 설정이 되어 있지 않다면, su 설정을 여기에서 하고 진행하시면 됩니다.

 

su 권한으로 아파치 폴더 경로로 접근하여 httpd.conf 파일을 수정합니다.

su
Password:

cd /etc/apache2
vi httpd.conf

rewrite 모듈은 #을 제거하고 PHP의 경우 이번에 설치한 경로를 바탕으로 바로 아래 추가합니다.

LoadModule rewrite_module libexec/apache2/mod_rewrite.so
#LoadModule php7_module libexec/apache2/libphp7.so
LoadModule php7_module /usr/local/opt/php@7.3/lib/httpd/modules/libphp7.so

사용자 권한을 설정합니다.

아래 내용을 본인 맥북 계정에 따라 설정합니다.

User 여기에 본인 계정을 작성
Group staff

ServerName를 설정합니다. #이 있다면 제거 후 내용을 채웁니다.

ServerName 127.0.0.1:80

.htaccess 파일의 설정을 우선하기 위해 AllowOverride 항목을 all로 변경합니다.

<Directory "/Library/WebServer/Documents">
    ...

    AllowOverride all

    ...
</Directory>

"/"만 입력해도 "index.php"를 찾아갈 수 있도록 DirectoryIndex에 index.php를 추가합니다.

<IfModule dir_module>
    DirectoryIndex index.php index.html
</IfModule>

php도 인식할 수 있도록 아래 항목을 아래 주석 아래에 추가합니다.

#
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
#
<FilesMatch \.php$>
    SetHandler application/x-httpd-php
</FilesMatch>

6. Apache 실행

이제 드디어 기본적인 설정이 완료되었습니다.

su 권한으로 다음과 같은 명령어로 Apache를 실행합니다. PHP 버전 변경으로 인한 에러가 발생할 수 있습니다.

su
Password:

sudo apachectl -k start

[Mon Sep 20 01:28:43.189863 2021] [so:warn] [pid 92935] AH06665: No code signing authority for module at /usr/local/opt/php@7.3/lib/httpd/modules/libphp7.so specified in LoadModule directive. Proceeding with loading process, but this will be an error condition in a future version of macOS.

http://127.0.0.1 접속했을 때, It works!가 표시되는 지 확인합니다. 정상적으로 표시가 안된다면, 아파치 서버가 구동 된 것이 아닙니다.

7. PHP 확인

PHP가 정상적으로 잡히는 지 확인합니다.

su 권한으로 다음과 같은 명령어를 통해 info.php를 만듭니다.

su
Password:

cd  /Library/WebServer/Documents

rm -rf ./*

echo "<?php phpinfo();" > ./info.php

http://127.0.0.1/info.php 를 접근하여 정상적으로 PHP 정보가 표시되는지 확인합니다.

버전이 7.3.30인지 확인하고 아래 이미지 처럼 ZIP이 정상적으로 설치가 되어있는지 확인합니다.

표시가 되지 않는다면, 아파치가 실행되지 않았거나 4. Apache 설정 (PHP 연동)이 제대로 수행된 것이 아닙니다.

8. XE 다운로드

여기에서 XE파일을 다운로드 폴더에 다운로드 받습니다.

링크가 정상적으로 동작하지 않는다면 아래 절차에 따라 접근 후 다운로드 하세요.

 

  1. https://www.xpressengine.com/guide/getting-started/installation-web 접속
  2. 웹 / FTP 환경에서 설치하기 부분의 http://start.xpressengine.io/download/latest.zip 를 선택하여 다운로드 받습니다.

Finder에서 다운로드 폴더의 lastest.zip 파일을 더블클릭하여 압축을 해제합니다.

su 권한으로 아파치 웹 폴더로 lastest 파일과 폴더를 옮기고 XE를 설치합니다. 한글로 작성된 부분은 적절한 내용으로 채웁니다.

su
Password:

cd  /Library/WebServer/Documents

cp -R /Users/본인 Macbook 계정/Downloads/latest/* ./

9. ".htaccess" 파일 추가

rewrite 규칙을 설정파일입니다.

여기에서 내용을 복사 후 su 권한으로 .htaccess 파일을 생성하여 내용을 붙여넣기 합니다.

su
Password:

cd  /Library/WebServer/Documents

vi .htaccess

10. 파일 및 폴더 권한 수정

su 권한으로 웹 폴더로 이동 후 각 폴더 및 파일에 707 권한을 부여합니다.

su
Password:

cd  /Library/WebServer/Documents

chmod -R 707 ./bootstrap/cache
chmod -R 707 ./config/production
chmod -R 707 ./storage
chmod -R 707 ./vendor
chmod -R 707 ./plugins
chmod -R 707 .htaccess

11. XE 설정 시작

http://127.0.0.1/install 페이지에 접속합니다.

 

  1. START 버튼을 선택합니다.
  2. 시스템 검사에서 모든 항목이 통과되었음을 확인하고 NEXT 버튼을 선택합니다.
  3. 약관에 동의하고 NEXT 버튼을 선택합니다.
  4. 다음과 같은 내용을 입력하고 NEXT 버튼을 선택합니다.
Database
--------------------
Driver : MySQL
Host : 127.0.0.1
Port : 3306
Database Name : xe
Database User Name : root
Password : MySQL 비밀번호 입력
Database Charset : utf8mb4
Table Prefix : xe

Web site Information
--------------------
Site Address : http://127.0.0.1
Time Zone : Asia/Seoul

Administrator
--------------------
Email : 본인 이메일
ID : 관리자 아이디
Nickname : 관리자 닉네임
Password : 관리자 비밀번호
Password Check : 관리자 비밀번호 다시 입력

 


 

 

이번에는 이전 게시글과 다르게 가이드의 내용에 충실한 방법으로 설치를 진행해봤습니다.

이전 삽질에서 깨달은 부분을 수정했습니다. 

사실.. 이전 삽질과 다를게 없긴 합니다.

 

ps. Macbook의 경우 다음과 같은 기본경로로 지정되어 있습니다.

apache 폴더 : /etc/apache2
php 폴더 : /usr/local/opt/php@7.3
www 폴더(root 폴더) : /Library/WebServer/Documents

 

출처

https://sotaneum.tistory.com/entry/Mac%EC%97%90-XE3-Xpress-Engine-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0-MySQL-PHP-Apache

반응형
다른 '해본 것/XE(Xpress Engine)'의 최근 글