[关闭]
@xile 2016-07-04T21:15:58.000000Z 字数 2157 阅读 7419

OS X EI Capitan 10.11.3上安装Nginx+MySQL+PHP

OSX PHP


前几日在新购的macbook Pro上搭建php环境,因为网上提供的资料不够准确,故走了一些弯路,特此记录,以帮助有需要的新手。OS X自带Apache和PHP,这里讲的是使用Nginx服务器。

以下为详细步骤:

1. 安装brew

brew是OS X上一个优秀的命令行包管理工具,用它来安装一系列软件非常方便。

  1. /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
2. 安装MySQL

首先我们来安装MySQL,因为它最容易安装

  1. brew install mysql

安装完成后为MySQL设置密码
首先无密码登录,用户名为root

  1. mysql -u root

在MySQL中操作

  1. >update mysql.user set authentication_string="new password" where User='root'
  2. >flush privileges
  3. >quit
3. 安装PHP

安装PHP7.0

  1. brew install homebrew/php/php70 homebrew/php/php70-mcrypt homebrew/php/php70-gmagick homebrew/php/php70-opcache homebrew/php/php70-xdebug

接下来在命令行中输入

  1. export PATH="/usr/local/sbin:$PATH"
  2. echo 'export PATH="/usr/local/sbin:$PATH"' >> ~/.bash_profile

最后输入php -vphp-fpm -v都应该显示PHP版本号7.0.x

启动php-fpm
  1. sudo php-fpm
结束php-fpm
  1. sudo pkill php-fpm

注意在终端中启动php-fpm之后未结束前不要关闭窗口,若输入其他命令应该新建窗口,非正常关闭重新启动将显示端口被占用,此时需要修改默认的端口9000为其他端口。修改方法在介绍完Nginx的安装之后在说明,因为其中涉及到Nginx的相关设置。

4. 安装Nginx

最后安装Nginx,这一步有很多关键的设置,务必认真。
安装

  1. brew install --with-http2 nginx

安装后进行相关设置,打开设置文件

  1. vim /usr/local/etc/nginx/nginx.conf

根据需要做如下修改

  1. server {
  2. listen 8080; #默认端口为8080
  3. server_name localhost; #网站地址
  4. #charset koi8-r;
  5. #access_log logs/host.access.log main;
  6. #如果想使用80端口,需要给予权限,添加下面两行并参考下一个步骤,不需要则可以跳过
  7. ssl_certificate ssl/nginx.crt;
  8. ssl_certificate_key ssl/nginx.key;
  9. location / {
  10. root html; #html为网站根目录,可以自己修改
  11. index index.html index.htm; #添加index.php
  12. }

生成密钥给予权限以使用80端口

  1. sudo mkdir /usr/local/etc/nginx/ssl/
  2. sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /usr/local/etc/nginx/ssl/nginx.key -out /usr/local/etc/nginx/ssl/nginx.crt

设置Nginx支持php
在刚才的配置文件中找到以下几行,去掉前面的井号,即使注释内容生效。并做相应修改

  1. location ~ \.php$ {
  2. root html; #此处的根目录应与上面的设置的一致
  3. fastcgi_pass 127.0.0.1:9000; #此处可以设置php-fpm默认端口
  4. fastcgi_index index.php;
  5. fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; #此处将/scripts$fastcgi_script_name修改为根目录$fastcgi_script_name
  6. include fastcgi_params; #将此行代码与上一行对调位置
  7. }

至此设置完成。

启动Nginx
  1. sudo nginx
结束/重载(配置文件)Nginx
  1. sudo nginx -s stop/reload

关于修改php-fpm默认端口的说明

在前面Nginx配置文件注释中已经有提到一处php-fpm默认端口的修改,这是在Nginx中进行设置,接下来只需在php-fpm的配置文件中另外修改即可。文件路径/usr/local/etc/php/7.0/php-fpm.d/www.conf,在文件中找到listen = 127.0.0.1:9000进行修改即可。

参考资料:
http://wlkns.co/install-nginx-php-mysql-on-mac-osx/
http://yangtai.blog.51cto.com/334569/213861

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注