개발 꿀팁/PHP

MAC 아래 brew로 PHP 개발 환경 구축

Jammie 2022. 7. 15. 12:15
반응형

맥 아래 brew로 PHP(LNMP/LAMP) 개발 환경 구축
맥 아래에 lamp를 구축하기 쉬운 개발 환경, xampp와 mamp가 있다통합된 환경입니다. 그러나 통합 환경은 항상 사용자 지정이 필요한 개발자에게 번거로울 수 있으며, Mac은 자체 APACH와 php를 지참하여 brew의 도움을 받아 쉽게 수동으로 구축할 수 있어 제어성이 뛰어납니다.

Bre
brew는 mac에 대하여, apt-get은 우분투에 대하여, 설치소프트웨어의 좋은 조력자, 더 많은 편리함을 얻을 수는 없다…

brew의 설치방식은 다음과 같다

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)"

brew 자주 사용하는 옵션

brew install xxx
brew uninstall xxx
brew list 
brew update xxx

Apache | | Nginx (하나만 포함)
아파치
아파치라면 맥이 지참한 기본만 쓰면 돼, 내 과통은 10.9, Apache는 다음 명령으로 제어할 수 있습니다

sudo apachectl start
sudo apachectl restart
sudo apachectl stop

홈 디렉토리만 변경할 수 있습니다. MAC은 기본적으로 홈 아래에 Sites 디렉토리가 있습니다. 접근 경로는 다음과 같습니다.

http://localhost/~user_name

이렇게 쉽게 접근할 수 없습니다. /etc/apache2/httpd.conf 내용 수정

DocumentRoot /Users/username/Sites
<Directory /Users/username/Sites>
    Options Indexes MultiViews
    # apache 2.2
    # AllowOverride All
    # Order allow,deny
    # Allow from 127.0.0.1
 
    # apache 2.4
    Require local
</Directory>

그러면 Sites 디렉토리가 사이트 루트 디렉토리가 됩니다. http://localhost를 통해서 접속할 수 있습니다.

상용 명령

sudo apachectl start # apache 시작
sudo apachectl stop # apache 닫기
sudo apachectl restart # APACHE를 다시 시작합니다

vhost 설정
vhost 설정 가능사이트 디버깅을 쉽게 할 수 있습니다. 특히 루트 디렉터리에서 실행해야 하는 사이트입니다.VirtualHostX 추천

설정 방법

sudo vi /etc/apache2/extra/httpd-vhosts.conf

그런 다음 다음을 입력하십시오

 

<Directory "/pash/to/site">
    Allow From All
    AllowOverride All
    Options +Indexes
</Directory>
<VirtualHost *:80>
       ServerName "site.test"
       DocumentRoot "/path/to/site"
</VirtualHost>

기본 http://localhost가 여기로 넘어오기 때문에 localhost용 host를 따로 설정해두면 좋을 것 같습니다

<VirtualHost *:80>
    ServerName localhost
    DocumentRoot /path/to/root
</VirtualHost>

그리고 host 파일을 수정해서 방금 설정한 ServerName을(를) 로컬로 변경하면 됩니다.

sudo vi /etc/hosts

쓰기:

127.0.0.1 site.test

Nginx
Nginx도 사용하기 편하므로 먼저 설치

brew install nginx

Nginx 끄기 명령은 다음과 같습니다. (80 포트를 수신하려면 관리자로 실행해야 합니다.)

#nginx 열기
sudo nginx
#설정 다시 읽기 | 다시 시작 | 중지 | 종료 nginx
nginx -s reload|reopen|stop|quit
#구문 오류 테스트
nginx -t
Nginx 설정
cd /usr/local/etc/nginx/
mkdir conf.d

 

Nginx 프로필 수정

 

vim nginx.conf

주요 수정 위치는 마지막 include입니다

worker_processes  1;  
 
error_log       /usr/local/var/log/nginx/error.log warn;
 
pid        /usr/local/var/run/nginx.pid;
 
events {
    worker_connections  256;
}
 
http {
    include       mime.types;
    default_type  application/octet-stream;
 
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
 
    access_log      /usr/local/var/log/nginx/access.log main;
    port_in_redirect off;
    sendfile        on; 
    keepalive_timeout  65; 
 
    include /usr/local/etc/nginx/conf.d/*.conf;
}

사용자 정의 파일 수정

 

vim ./conf.d/default.conf

청취 포트 추가

server {
    listen       80;
    server_name  localhost;
 
    root /Users/username/Sites/; # 이 항목은 너를 위해 관련 웹 페이지를 저장할 경로를 수정해야 한다
 
    location / { 
        index index.php;
        autoindex on; 
    }   
 
    #proxy the php scripts to php-fpm  
    location ~ \.php$ {
        include /usr/local/etc/nginx/fastcgi.conf;
        fastcgi_intercept_errors on; 
        fastcgi_pass   127.0.0.1:9000; 
    }   
 
}

 

아직 php-fpm을 열지 않아 php 사이트 접속이 불가능하다.

맥 10.9는 자체 php-fpm을 가지고 있지만 우리가 가장 많이 사용하기 때문에새로운 PHP, PHP에는 php-fpm이 포함되어 있기 때문에 PHP의 php-fpm을 사용하면 버전의 일관성을 보장할 수 있습니다.

여기서 명령은 다음 php를 설치한 후에 실행합니다

sudo nginx
sudo php-fpm -D

PHP
PHP는 mac에서 기본으로 설치했지만 제어가 잘 되지 않아 brew를 이용하여 mac에서 최신 버전, 심지어 여러 버전을 설치할 수 있습니다. 나는 php 5.5를 설치했습니다.

brew update
brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php
# brew install php55 --with-fpm #Nginx
brew install php55 #Apache

그리고 php의 CLI 경로와 아파치에 사용되는 php 모듈을 수정한다..bashrc 또는 .zshrc에 다음을 추가한다

#export PATH="$(brew --prefix josegonzalez/php/php55)/bin:$PATH" 
export PATH="/usr/local/bin:/usr/local/sbin:$PATH"

시스템 기본인 cli의 php 버전 대신 방금 설치한 php다.다음 /etc/apache2/httpd.conf에서 추가

LoadModule php5_module /usr/local/Cellar/php55/5.5.8/libexec/apache2/libphp5.so

이렇게 해서 아파치가 사용하는 php 버전도 수정했다.

뒷부분은 몽고와 mysql을 사용하기 때문에 바로 이용하실 수 있습니다.면명령은 php모듈 장착, 다른모듈도 유사

#brew install php55-mysql #이것은 더 이상 설치할 필요가 없다
brew install php55-mongo

MySQL
mac은 mysql을 가지고 있지 않습니다. 여기에는 다시 설치해야 합니다. 방법은 간단합니다

brew install mysql
unset TMPDIR
mysql_install_db --verbose --user=`root` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
mysql_install_db --verbose --user=root --basedir="$(brew --prefix mysql)"--datadir=/usr/local/var/mysql --tmpdir=/tmp
 sudo chown -R your_user /usr/local/var/mysql/

첫 번째 문장은 설치, 다음 문장은 정상 사용을 보장한다.다음으로 시작 명령입니다

mysql.server start

mysql에 암호를 설정하는 방법은 다음과 같습니다

mysqladmin -u root password 'xxx'

mysql 설정을 수정하려면 /usr/local/etc에 my.cnf를 설정합니다. 예를 들어 log를 추가합니다

[mysqld]
general-log
general_log_file = /usr/local/var/log/mysqld.log

//직접추가
전원 켜기 시작 을 설정하려면 다음 명령을 실행합니다

mkdir-p ~/Library/Launch에이전트

cp/usr/local/Cellar/mysql/5.6.16/homebrew.mxcl.mysql.plist ~/Library/Launch Agents/ #5.6.16은 데이터베이스 버전 번호입니다. 그때 설치한 버전 번호에 따라 직접 수정하십시오.
launchctl load-w ~/ Library/ Launch Agents/ homebrew.mxcl.mysql.plist


몽고DB
MongoDB는 가장 쉬운 것 중 하나라 할 수 있습니다. 직접 실행

brew install mongodb

시작 방법

mongod --fork

부팅 방법PHPMyAdmin
phpmyadmin 거의 관리mysql 가장 쉬운 웹 앱이죠. 매번 나는 그것을 끼워 넣는다.

홈페이지에 가서 최신 버전을 다운로드하다
~/Sites/phpm으로 압축 풀기야드민 아래
phpmyadmin 디렉터리에서 만들기쓰기 가능한 config 디렉터리 만들기
HTTP 열기: // localhost/phpmyadmin/setup, 서비스 설치 후 저장(여기서 계정만 입력)비밀번호면 충분합니다)
config에서 생성된 config.inc.php를 phpmyadmin 루트 디렉터리로 이동
config 삭제
이렇게 해서 담아놨어요, 조금 복이 있을 수 있지만자, 하지만 한번 오시면 익숙해져요.

여기서 2002년의 오류를 범할 가능성이 크다.mysql.sock을 찾을 수 없는 문제를 다음과 같은 방법으로 해결한다

sudo mkdir /var/mysql
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock

록몽고
락몽고는몽고DB가 사용하기 좋은 웹 애플리케이션 하나로 설치도 용이

홈페이지에 가서 최신 버전을 다운로드하다
~/Sites로 압축 풀기/rockmongo 아래
HTTP 실행: //localhost/rockmongo면 됩니다.
site를 놓고 Dropbox 폴더 아래

ln -s ~/Dropbox/sitename ~/Sites/sitename
chmod a+rw ~/Dropbox
chmod a+rw ~/Dropbox/sitename

완성하다.
이렇게 맥 아래에 php 개발 환경을 배치하게 되었습니다,enjoy it!

 

반응형