当前位置:首页 > 操作系统 > MacOs

在 Mac 上搭建 Nginx PHP Mysql 开发环境

.gz cd nginx?1.7.4 ./configure

执行报错:

<code>./configure: error: <span class="hljs-operator">the</span> HTTP rewrite module requires <span class="hljs-operator">the</span> PCRE library.
You can either disable <span class="hljs-operator">the</span> module <span class="hljs-keyword">by</span> <span class="hljs-keyword">using</span> ??<span class="hljs-keyword">without</span>?http_rewrite_module
option, <span class="hljs-operator">or</span> install <span class="hljs-operator">the</span> PCRE library <span class="hljs-keyword">into</span> <span class="hljs-operator">the</span> <span class="hljs-keyword">system</span>, <span class="hljs-operator">or</span> build <span class="hljs-operator">the</span> PCRE library
statically <span class="hljs-built_in">from</span> <span class="hljs-operator">the</span> source <span class="hljs-operator">with</span> nginx <span class="hljs-keyword">by</span> <span class="hljs-keyword">using</span> ??<span class="hljs-operator">with</span>?pcre=<path> option.
</code>

Rewrite 需要 PCRE 库的支持 , 下载pcre库后进行编译安装

<code>tar xvzf pcre<span class="hljs-class">.tar</span><span class="hljs-class">.gz</span>
cd pcre-<span class="hljs-number">8.35</span>
./configure
make
sudo make install
</code>

重新编译nginx

<code><span class="hljs-keyword">cd</span> ..
./configure
<span class="hljs-keyword">make</span>
sudo <span class="hljs-keyword">make</span> install
</code>

创建一个符号链接让开关容易一些

<code>sudo ln -s <span class="hljs-regexp">/usr/</span>local<span class="hljs-regexp">/nginx/</span>sbin<span class="hljs-regexp">/nginx /u</span>sr<span class="hljs-regexp">/local/</span>bin<span class="hljs-regexp">/nginx</span>
</code>

有了 web 服务,接着尝试启动系统自带的php-fpm

<code>php-fpm
</code>

执行报错

<code>ERROR: failed <span class="hljs-built_in">to</span> <span class="hljs-built_in">open</span> configuration <span class="hljs-built_in">file</span> <span class="hljs-string">‘/private/etc/php-fpm.conf‘</span>: No such <span class="hljs-built_in">file</span> <span class="hljs-operator">or</span> <span class="hljs-built_in">directory</span> (<span class="hljs-number">2</span>)
</code>

找不到配置文件,为了省事就直接把.default复制,然后赋予权限

<code>sudo cp /private/etc/php-fpm<span class="hljs-class">.conf</span><span class="hljs-class">.default</span> /private/etc/php-fpm<span class="hljs-class">.conf</span>
sudo chmod <span class="hljs-number">777</span> /private/etc/php-fpm<span class="hljs-class">.conf</span>
sudo php-fpm
</code>

尝试启动报错:

<code>ERROR: failed <span class="hljs-built_in">to</span> <span class="hljs-built_in">open</span> error_log (/usr/var/<span class="hljs-built_in">log</span>/php-fpm.<span class="hljs-built_in">log</span>): No such <span class="hljs-built_in">file</span> <span class="hljs-operator">or</span> <span class="hljs-built_in">directory</span> (<span class="hljs-number">2</span>)
</code>

找不到文件夹就新建

<code><span class="hljs-built_in">sudo</span> mkdir /usr/var
<span class="hljs-built_in">sudo</span> mkdir /usr/var/log
<span class="hljs-built_in">sudo</span> php-fpm
</code>

此时PHP正常启动,不过还是需要完善一下 ,放置一下配置文件,修改一下权限,如果开公网访问的话“中奖”就杯具了,这种东西还是不要用 su 执行好一点。

<code>cp /etc/php<span class="hljs-class">.ini</span><span class="hljs-class">.default</span>  /etc/php<span class="hljs-class">.ini</span>
sudo chmod <span class="hljs-number">777</span> /etc/php<span class="hljs-class">.ini</span>
sudo killall php-fpm
php-fpm
</code>

此时PHP正常启动 有两个notice 可以不管他

<code>NOTICE: [pool www] ‘user‘ directive <span class="hljs-keyword">is</span> ignored when FPM <span class="hljs-keyword">is</span> <span class="hljs-keyword">not</span> <span class="hljs-property">running</span> <span class="hljs-keyword">as</span> root
NOTICE: [pool www] ‘group‘ directive <span class="hljs-keyword">is</span> ignored when FPM <span class="hljs-keyword">is</span> <span class="hljs-keyword">not</span> <span class="hljs-property">running</span> <span class="hljs-keyword">as</span> root
</code>

修改 nginx 配置文件 使其可以处理php

<code><span class="hljs-title">location</span> <span class="hljs-regexp">~ .php$</span> {
      <span class="hljs-title">root</span>   /path/to/wwwroot;
      <span class="hljs-title">fastcgi_pass</span>   <span class="hljs-number">127.0.0.1:9000</span>;
      <span class="hljs-title">fastcgi_index</span>  index.php;
      <span class="hljs-title">include</span>        fastcgi_params;
      <span class="hljs-title">fastcgi_param</span>  SCRIPT_FILENAME  /path/to/wwwroot<span class="hljs-variable">$fastcgi_script_name</span>;
}
</code>

启动 nginx

<code><span class="hljs-built_in">sudo</span> nginx
</code>

接下来就是 mysql 了

从官方下载 ( 下载DMG的话安装更简单的,可是我手贱下载了tar )http://dev.mysql.com/downloads/mysql/

<code>tar zxvf mysql.tar.gz
<span class="hljs-built_in">cd</span> mysql-*
mkdir /User/typcn/mysql
mv * /User/typcn/mysql/
<span class="hljs-built_in">cd</span> /User/typcn/mysql
<span class="hljs-built_in">sudo</span> chown -R _mysql .
<span class="hljs-comment">#赋予权限</span>
<span class="hljs-built_in">sudo</span> chgrp -R _mysql . 
<span class="hljs-built_in">sudo</span> scripts/mysql_install_db --user=_mysql --datadir=/User/typcn/mysql/data
<span class="hljs-comment">#执行安装</span>
<span class="hljs-built_in">sudo</span> chown -R root . 
<span class="hljs-built_in">sudo</span> chown -R _mysql data 
subl my.cnf 
</code>

编辑Mysql 配置文件

<code><span class="hljs-setting">basedir = <span class="hljs-value">/path/to/mysql</span></span>
<span class="hljs-setting">datadir = <span class="hljs-value">/path/to/mysql/data</span></span>
<span class="hljs-setting">port = <span class="hljs-value"><span class="hljs-number">3306</span> </span></span>
<span class="hljs-setting">server_id = <span class="hljs-value"><span class="hljs-number">1</span> </span></span>
<span class="hljs-setting">socket = <span class="hljs-value">/tmp/mysql.sock</span></span>
<span class="hljs-setting">user = <span class="hljs-value">_mysql </span></span>
</code>

用脚本管理Mysql

<code>sudo ln -s <span class="hljs-regexp">/User/</span>typcn<span class="hljs-regexp">/mysql/</span>support-files<span class="hljs-regexp">/mysql.server /</span>usr<span class="hljs-regexp">/local/</span>bin/mysql
subl support-files/mysql.server
</code>

修改配置文件

<code>basedir<span class="hljs-subst">=</span>/path/<span class="hljs-keyword">to</span>/mysql
datadir<span class="hljs-subst">=</span>/path/<span class="hljs-keyword">to</span>/<span class="hljs-built_in">data</span>
mysqld_pid_file_path<span class="hljs-subst">=</span>/path/<span class="hljs-keyword">to</span>/mysql<span class="hljs-built_in">.</span>pid
</code>

好吧。我承认pid什么的放tmp是个坏习惯。

<code><span class="hljs-built_in">sudo</span> mysql start
</code>

现在访问 localhost 试试吧

在 Mac 上搭建 Nginx PHP Mysql 开发环境 - 文章图片

在 Mac 上搭建 Nginx PHP Mysql 开发环境

标签:

本文系统来源:http://blog.csdn.net/bugall/article/details/46387055


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!

相关教程推荐

其他课程推荐