맥 아래 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
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!
'개발 꿀팁 > PHP' 카테고리의 다른 글
php 배열 병합 및 키 값 보존 방법 (0) | 2022.07.15 |
---|---|
php 배열에서 여러 열을 지정하는 방법 반환 (0) | 2022.07.15 |
ecshop 취약성 복구 정리 (0) | 2022.07.15 |
PHP+MySQL 뉴스 관리 시스템 구현 (0) | 2022.07.14 |
php는 데몬을 구현하는 두 가지 방식이다 (0) | 2022.07.13 |