오르다 보면 언젠가는 정상에 다다르게 된다.

Php

MacOs 에서 php 개발 환경 구축하기 2탄 로컬 서버 셋팅

Looplian 2022. 5. 26. 17:54
반응형

우선 맥에 이클립스를 설치한다. 

https://looplian.tistory.com/entry/MacOs-%EC%97%90%EC%84%9C-php-%EA%B0%9C%EB%B0%9C-%ED%99%98%EA%B2%BD-%EA%B5%AC%EC%B6%95%ED%95%98%EA%B8%B0-with-Eclipse

 

MacOs 에서 php 개발 환경 구축하기 with Eclipse

맥에서 php 개발을 위해 설치 할수 있는 프로그램은 ~~ 무지 많다........ VS Code 로 부터 Eclipse, PhpStom , Sublime 아니면 코드 작성만 필요하다면 텍스트 에디터 심지어 XCode 로도 코드는 작성할수 있다..

looplian.tistory.com

 

 

이클립스 설치 후 homebrew를 설치한다. 

https://looplian.tistory.com/entry/MacOs-%EC%97%90%EC%84%9C-nodejs-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0-homebrew

 

MacOs 에서 node.js 설치하기 homebrew

Homebrew가 설치되어 있을 때의 방법. 터미널 앱을 실행하여 아래와 같이 입력한다. brew update brew install node node -v npm -v 이때 기존에 아파치등이 설치 되어 있는데 예전 버전이라면 다시 설치 될수도

looplian.tistory.com

 

현재 개발 설정은 MscOs Monterey v12를 기준으로 설명한다. 

 

 

혹시 기본으로 설치된 아파치가 있는지 확인해본다. 

apachectl -v

 

설치된 아파치가 (httpd 서버)가 있다면 제거하고 brew apache를 설치한다. 

sudo apachectl stop
sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist 2>/dev/null

새로운 아파치 서버를 설치한다. 

brew install httpd

설치가 완료 되면 시작 시 자동 시작되도록 설정을 한다. 

brew services start httpd

php 설치를 한다. 

brew install php

현재는 php 8의 최신 버전이 기본으로 설치가 될 것이다.  이전 버전의 php를 사용하고자 한다면

brew install shivammathur/php/php@7.0
brew install shivammathur/php/php@7.1
brew install shivammathur/php/php@7.2
brew install shivammathur/php/php@7.3
brew install shivammathur/php/php@7.4
brew install shivammathur/php/php@8.0

위에서  필요한 버전을 설치하도록 한다. 

설치 후 php -v 에서 원하는 버전이 안나올 경우 아래처럼 링크를 다시 연결한다. 

brew unlink php && brew link --overwrite --force php@7.2

 

아파치의 기본설정을 확인해보자 

$ httpd -V
Server version: Apache/2.4.53 (Unix)
Server built:   Apr 28 2022 05:25:24
Server's Module Magic Number: 20120211:124
Server loaded:  APR 1.7.0, APR-UTIL 1.6.1, PCRE 10.40 2022-04-14
Compiled using: APR 1.7.0, APR-UTIL 1.6.1, PCRE 10.40 2022-04-14
Architecture:   64-bit
Server MPM:     prefork
  threaded:     no
    forked:     yes (variable process count)
Server compiled with....
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=256
 -D HTTPD_ROOT="/usr/local/Cellar/httpd/2.4.53_2"
 -D SUEXEC_BIN="/usr/local/opt/httpd/bin/suexec"
 -D DEFAULT_PIDLOG="/usr/local/var/run/httpd/httpd.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="/usr/local/etc/httpd/mime.types"
 -D SERVER_CONFIG_FILE="/usr/local/etc/httpd/httpd.conf"

하단의 SERVER_CONFIG_FILE  의 경로로 이동한다. 

httpd.conf 파일을 열어 아래와 같이 제대로 들어가 있는지 확인한다. 

없다면 추가해주자.

LoadModule php7_module /usr/local/opt/php@7.2/lib/httpd/modules/libphp7.so

<FilesMatch \.php$>
    SetHandler application/x-httpd-php
</FilesMatch>

또한 80 포트에 접속하기 위해 Listen 0.0.0.0:80 도 추가한다. 

Listen 0.0.0.0:80

extra 폴더에 있는 httpd-vhosts.conf를 수정하여 준다. 

현재 이클립스로 php 를 개발하고 있는 페이지를 도메인도 넣어 기본 페이지로 설정해보자.

<VirtualHost *:80>
    ServerAdmin htlp@looplian.com
    DocumentRoot "/Users/kim/web_work/looplian"
    ServerName local.looplian.com
    ErrorLog "/private/var/log/apache2/looplian.com-error_log"
    CustomLog "/private/var/log/apache2/looplian.com-access_log" common
    <Directory "/Users/kim/web_work/looplian">
        Options FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
        Require all granted
    </Directory>
</VirtualHost>

80 포트로 들어오는 요청중 도메인이 local.looplian.com으로 접속되는 것들은 /Users/kim/web_work/looplian 폴더가 루트가 되도록 설정했다. 

이제 /etc/hosts 파일을 수정하여 local.looplian.com으로 접속 시 로컬로 접속되게 한다. 

127.0.0.1       local.looplian.com

아파치를 재실행 하고 코드를 index.php 에 <?php echo "Hellow World !!!"; ?> 넣어 제대로 출력되는지 실행해보자.

 

퍼미션 오류가 날경우 php 개발 폴더의 권한을 바꿔주어야 한다. 상위 폴더도 확인하여 권한설정을 해주면된다. 

chmod 755 /Users/kim/web_work/looplian

이클립스로 개발하면서 웹브라우저에서 local.looplian.com 로 접속하여 테스트 하면서 개발해볼 수 있다.

 

반응형