저는 Mac OS를 사용하면서 종료되는 일이 별로 없는데, 컴퓨터를 켜거나 깨울 때마다 일정 시간 동안 시스템이 당연히 멈춥니다. 특히 시작할 때. 확실히 가서 담그거나 양동이를 가질 수 있습니다. 따라서 MD101의 광드라이브를 제거하고 256G Sandisk SSD로 교체하세요. 기존 2G 2를 제거하고 8G 2로 교체하세요. 속도가 뛰어나야 하며 적어도 2년은 더 사용할 수 있습니다.
이번 기회에 하드 드라이브를 추가해 개발 환경을 완전히 다시 만들 예정입니다. 이제 Mac에 대해 어느 정도 이해가 되었기 때문에 이번 개발 환경의 설치 세부 사항을 특별히 기록하여 Mac을 처음 접하는 분들에게도 도움이 되기를 바랍니다
환경학생. 본 개발환경은 모두 HomeBrew를 기반으로 설치되었습니다.
주요 소프트웨어 버전: PHP5.5.14, Nginx 1.6.0, MySQL5.6.19
OS X 매버릭스
시스템을 다시 설치하고 Apple Store에서 OS X Mavericks 설치 파일을 다운로드한 후 16G USB3.0 USB 플래시 드라이브를 준비하세요. OSX Mavericks를 새로 설치하기 위한 부팅 USB 플래시 드라이브를 만듭니다.
USB 플래시 드라이브를 연결하고 터미널에서 실행합니다.
실제 상황에 따라 USB 드라이브 문자는 제목이 없습니다.
위 정보를 보면 부팅 디스크가 성공적으로 생성된 것입니다. 설치도 너무 간편해요 :)
시스템 설치 후 아직 파일을 마이그레이션하지 않았습니다. 저는 사진을 좋아해서 Aperture에 RAW 형식의 원본 이미지가 많이 있습니다
Nikon D800의 사진 라이브러리에는 RAW 파일 하나가 약 40M 정도입니다. 사진 라이브러리와 사진 스트림을 마이그레이션할 때 함정에 빠지지 않기를 바랍니다. 개발 환경이 준비될 때까지 기다리세요. OS X 시스템을 10.9.4로 업데이트하세요
을 클릭한 다음 최신 Xcode와 매장에서 구입한 소프트웨어를 설치하세요. 시스템에 문제가 없는지 확인 후 다음 단계로 넘어가세요...
맥주
Brew는 Mac용 패키지 관리 도구입니다. Github를 통해 Mac에 적합한 컴파일 구성 및 패치를 호스팅하므로 개발 도구를 쉽게 설치할 수 있습니다. Mac에는 Ruby가 기본으로 제공됩니다
따라서 설치가 매우 편리하며 git도 자동으로 설치됩니다. 공식홈페이지 :
설치가 완료된 후 브루닥터가 보면 자가점검을 하시길 권장합니다
이제 시스템을 추출할 준비가 되었습니다.
설치:
참고: 프롬프트가 제거되므로 Brew 서비스 관련 명령을 자주 사용하지 않는 것이 가장 좋습니다
`php55` 중지 중...(시간이 좀 걸릴 수 있음)
==> `php55`를 성공적으로 중지했습니다(레이블: homebrew.mxcl.php55)
==> `php55`를 성공적으로 시작했습니다(레이블: homebrew.mxcl.php55)
오 마이 Zsh
Ohmyzsh & iTerm2는 Mac OS X에 설치해야 하는 두 가지 아티팩트이며 두 그룹은 플러그인과 함께 사용됩니다. 그것은 단지 신과 같은 존재일 뿐입니다. 메시를 즉시 처치하세요, 네이마르:)
아, 공식홈페이지를 클릭하세요
oh my zsh 설치
기본 셸 설정
시스템에서 지원하는 쉘 목록을 확인하세요. Mac 10.9.4에는 Linux에 설치해야 하는 zsh 5.0.2가 함께 제공됩니다.
cat /etc/shells # List of acceptable shells for chpass(1). # Ftpd will not allow users to connect who are not using # one of these shells. /bin/bash /bin/csh /bin/ksh /bin/sh /bin/tcsh /bin/zsh zsh --version zsh 5.0.2 (x86_64-apple-darwin13.0) chsh -s /bin/zsh
Mac에는 zsh가 함께 제공되지만 최신 버전의 zsh를 원한다면 Brew install zsh를 사용하여 최신 버전을 설치할 수 있습니다.
/usr/local/bin/zsh --version zsh 5.0.5 (x86_64-apple-darwin13.3.0) 차이는 크지 않으며 기본 버전은 이미 매우 새로운 버전입니다.
자가제통
캐스크 설치:
브루 탭 핀즈/홈브루-캐스크 && 브루 설치 브루-캐스크
cask 일반 명령:
Mac App Store와 비교하여 Cask의 장점에 대해 이야기해 보겠습니다.
일반적으로 사용되는 소프트웨어(특히 개발자)에 대한 더욱 포괄적인 지원을 통해 Cask는 놀라운 결과를 선사할 것입니다.
소프트웨어는 빠르게 업데이트되며 일반적으로 최신 버전은 오랫동안 스토어에 업데이트됩니다.
스토어 오픈보다 명령어 설치가 더 편리한 것 같아요. 게다가 중국 스토어 속도도 XXOO입니다.
iTerm2
iTerm2 설치:
양조통 설치 iterm2
위에서 언급한 아티팩트 조합에 대한 자세한 사용 방법은 [iTerm2 공식 문서](http://www.iterm2.com/#/section/documentatio
를 참조하세요.
n) 여기서는 자세히 설명하지 않습니다.
개발에 일반적으로 사용되는 패키지 및 소프트웨어 설치
개발 패키지 설치
brew cask install alfred appcleaner firefox google-chrome phpstorm sublime-text 후속편-pro 스케치 mplayerx Thunder qq
Alfred는 매우 좋은 기능이므로 설치하는 것이 좋습니다. 기본 검색 디렉터리에는 Brew Cask가 설치한 소프트웨어가 포함되어 있지 않으므로 `/opt/homebrew-
를 수동으로 변경하세요.
Cask`가 Alfred의 검색 디렉토리에 추가되었습니다
MySQL PHP Nginx Redis Memcache
이전에는 너무 많은 준비 작업을 해왔지만 사실 제한된 공간과 능력으로 인해 zsh, iTerm2 Brew 등은 단시간에 완료할 수 없습니다.
검색하세요. 이제 요점에 도달했습니다. 어서오세요 :)
MySQL 설치
MySQL开机启动:
安装完成之后开启MySQL安全机制:
根据终端提示,输入root密码,然后依次确认一些安全选项。具体信息可以参考
外国友人的这篇文章
查看一下MySQL运行情况
~ ps aux | grep mysql calvin 1695 0.0 0.5 2719864 90908 ?? S 1:38上午 0:00.31 /usr/local/Cellar/mysql/5.6.19/bin/mysqld --basedir=/usr/local/Cellar/mysql/5.6.19 --datadir=/usr/local/var/mysql --plugin-dir=/usr/local/Cellar/mysql/5.6.19/lib/plugin --bind-address=127.0.0.1 --log-error=/usr/local/var/mysql/CalvinsMacBook-Pro.local.err --pid-file=/usr/local/var/mysql/CalvinsMacBook-Pro.local.pid --socket=/tmp/mysql.sock --port=3306 calvin 1323 0.0 0.0 2444628 1020 ?? S 1:38上午 0:00.04 /bin/sh /usr/local/opt/mysql/bin/mysqld_safe --bind-address=127.0.0.1 --datadir=/usr/local/var/mysql #测试连接MySQL mysql -uroot -p Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 23 Server version: 5.6.19-log Homebrew Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
安装phpmyadmin
添加brew的PHP扩展库:
PHP编译过程中如果遇到configure: error: Cannot find OpenSSL's
_For future reference of anybody looking for Command Line Tools with Xcode 5,
open up a Terminal window and type xcode-select --install. A window will
appear informing you command line tools are required. Click Install and you
should be good to go_
等待PHP编译完成,开始安装PHP常用扩展,扩展安装过程中brew会自动安装依赖包,例如php55-pdo-pgsql
会自动装上postgresql,这里我安装以下PHP扩展:
扩展里面提一下php55-phalcon 和php55-swoole.一个是C语言写的PHP框架,安装来个人摸索熟悉一下,还没有真正的使用过,大致看了一下文档,感觉非常吊炸天。目前公司的项目是基于Yii2的,也看看这个框架。
另外一个swoole是国产的PHP高性能网络通信框架,貌似不错,可能在项目中会考虑用到它。
由于Mac自带了php和php-fpm,因此需要添加系统环境变量PATH来替代自带PHP版本。
测试一下效果:
brew install nginx --with-http_geoip_module
Nginx启动关闭命令:
#nginx 열기
sudo nginx
#구성 다시 로드|재시작|중지|nginx 종료
nginx -s 다시 로드|다시 열기|중지|종료
#Mac의 launchctl을 사용하여 시작|중지할 수도 있습니다
launchctl 언로드 ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist
Nginx 시작
vim /usr/local/etc/nginx/nginx.conf
다음을 입력하세요:
error_log /usr/local/var/logs/nginx/error.log 디버그;
pid /usr/local/var/run/nginx.pid;
이벤트 {
작업자 연결 256;
}
http {
mime.types 포함;
default_type 애플리케이션/옥텟-스트림;
log_format 메인 '$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/logs/access.log 메인;
파일 보내기
keepalive_timeout 65;
port_in_redirect 꺼짐;
/usr/local/etc/nginx/sites-enabled/*를 포함합니다.
}
#/var/www 아래에 info.php index.html 404.html 403.html 파일 생성
vi /var/www/info.php vi /var/www/index.html vi /var/www/403.html vi /var/www/404.html
기본 가상 호스트 기본값 생성
vim /usr/local/etc/nginx/sites-available/default
입력:
access_log /usr/local/var/logs/nginx/default.access.log 메인;
위치 / {
색인 index.html index.htm index.php;
자동 색인 켜짐;
/usr/local/etc/nginx/conf.d/php-fpm;
포함
}
위치 = /정보 {
127.0.0.1 허용;
모두 거부;
다시 쓰기(.*) /.info.php;
}
error_page 404 /404.html;
error_page 403 /403.html;
}
vim /usr/local/etc/nginx/sites-available/default-ssl
입력:
vim /usr/local/etc/nginx/sites-available/phpmyadmin
输入以下配置
SSL
mkdir -p /usr/local/etc/nginx/ssl openssl req -new -newkey rsa:4096 -days 365 -nodes -x509 -subj "/C=US/ST=State/L=Town/O= Office/CN=localhost" -keyout /usr/local/etc/nginx/ssl/localhost.key -out /usr/local/etc/nginx/ssl/localhost.crt openssl req -new -newkey rsa:4096 -days 365 -nodes -x509 -subj "/C=US/ST=State/L=Town/O=Office/CN=phpmyadmin" -keyout /usr/local/etc/nginx/ssl/phpmyadmin.key -out /usr/local /etc/nginx/ssl/phpmyadmin.crt
创建虚拟主机软连接,开启虚拟主机
ln -sfv /usr/local/etc/nginx/sites-available/default /usr/local/etc/nginx/sites-enabled/default ln -sfv /usr/local/etc/nginx/sites-available/ 기본-ssl /usr/local/etc/nginx/sites-enabled/default-ssl ln -sfv /usr/local/etc/nginx/sites-available/phpmyadmin /usr/local/etc/nginx/sites-enabled/phpmyadmin
启动|停止Nginx
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist
接下来你可以通过下면这些连接访问:
设置快捷服务控命令
为了后면管리방便,将命令 별칭 下,vim ~/.bash_aliases 输入一下内容:
alias nginx.start='launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist' alias nginx.stop='launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist ' 별칭 nginx.restart='nginx.stop && nginx.start' 별칭 php-fpm.start="launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php55.plist" 별칭 php-fpm.stop="launchctl 언로드 -w ~/Library/LaunchAgents/homebrew.mxcl.php55.plist" alias php-fpm.restart='php-fpm.stop && php-fpm.start' alias mysql.start="launchctl load -w ~/Library /LaunchAgents/homebrew.mxcl.mysql.plist" alias mysql.stop="launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist" alias mysql.restart='mysql.stop && mysql.start' 별칭 redis.start="launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.redis.plist" 별칭 redis.stop="launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.redis.plist" 별칭 redis. restart='redis.stop && redis.start' alias memcached.start="launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.memcached.plist" alias memcached.stop="launchctl unload -w ~/Library/LaunchAgents /homebrew.mxcl.memcached.plist" 별칭 memcached.restart='memcached.stop && memcached.start'
让快捷命令生效
echo "[[ -f ~/.bash_aliases ]] && . ~/.bash_aliases" >> ~/.bash_profile 소스 ~/.bash_profile #创建站点目录到主目录, 方便快捷访问 ln -sfv /var/www ~/htdocs
는 없습니다.示不要离开,点击了不离开之后,Safari然后还特地去吐了个槽,害我白白又浪费很久来写这个博客。希望能帮助到刚刚接触Mac의 동학。Mac의 개발을 즐겨주세요 EVN :)
参考资料:Homebrew를 사용하여 OS X Mavericks에 Nginx, PHP-FPM, MySQL 및 phpMyAdmin 설치
本文由Fish创작