免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6047 | 回复: 1
打印 上一主题 下一主题

Mac Lion上安装配置Nginx PHP PHP-FPM [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-10 21:01 |只看该作者 |倒序浏览
Mac Lion上安装配置Nginx PHP PHP-FPM
  1. <!--?xml version="1.0" encoding="UTF-8" standalone="no"?-->

  2. Install Nginx And PHP-FPM On Mac Lion

  3. 安装Nginx

  4. 方法1:使用brew.

  5. brew install nginx

  6. 按提示操作,安装完成后nginx的配置文件在/usr/local/etc/nginx/nginx.conf。

  7. 启动nginx:

  8. nginx 或者 sudo nginx

  9. 注意:若nginx的监听端口为1024以下,则需要使用sudo,否则会出现Permission denied.

  10. 停止 nginx



  11. (sudo)nginx -s stop


  12. 自动启动

  13. You can start nginx automatically on login running as your user with:

  14. mkdir -p ~/Library/LaunchAgents

  15. cp /usr/local/Cellar/nginx/1.0.8/org.nginx.nginx.plist ~/Library/LaunchAgents/

  16. launchctl load -w ~/Library/LaunchAgents/org.nginx.nginx.plist

  17. 禁止自动启动

  18. launchctl unload -w ~/Library/LaunchAgents/org.nginx.nginx.plist

  19. rm ~/Library/LaunchAgents/org.nginx.nginx.plist

  20. 方法2:下载源码编译

  21. cd ~/SourceCache

  22. curl -O http://nginx.org/download/nginx-1.0.4.tar.gz

  23. tar -xzf nginx-1.0.4.tar.gz

  24. cd nginx-1.0.4

  25. brew install pcre

  26. ./configure --prefix=/usr/local/nginx --pid-path=/usr/local/nginx/var/run/nginx.pid --with-http_ssl_module

  27. make

  28. sudo make install

  29. 自动启动

  30. sudo nano /Library/LaunchDaemons/org.nginx.nginx.plist

  31. <?xml version="1.0" encoding="UTF-8"?>

  32. <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

  33. <plist version="1.0">z

  34. <dict>

  35. <key>KeepAlive</key>

  36. <true/>

  37. <key>Label</key>

  38. <string>org.nginx.nginx</string>

  39. <key>LaunchOnlyOnce</key>

  40. <true/>

  41. <key>NetworkState</key>

  42. <true/>

  43. <key>ProgramArguments</key>

  44. <array>

  45. <string>/usr/local/nginx/sbin/nginx</string>

  46. </array>

  47. <key>RunAtLoad</key>

  48. <true/>

  49. <key>ServiceDescription</key>

  50. <string>Nginx web server</string>

  51. <key>StandardErrorPath</key>

  52. <string>/var/log/system.log</string>

  53. </dict>

  54. </plist>

  55. 配置nginx

  56. sudo mkdir /usr/local/etc/nginx/sites-available

  57. sudo mkdir /usr/local/etc/nginx/sites-enable

  58. sudo nano /usr/local/etc/nginx/nginx.conf



  59. http{



  60. server{

  61. ...

  62. }

  63. include sites-enabled/*.conf;

  64. }




  65. sudo nano /usr/local/nginx/conf/php.conf

  66. fastcgi_intercept_errors on;

  67. location ~ \.php$

  68. {

  69. fastcgi_split_path_info ^(.+\.php)(/.+)$;

  70. fastcgi_param PATH_INFO $fastcgi_path_info;

  71. fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;

  72. fastcgi_param QUERY_STRING $query_string;

  73. fastcgi_param REQUEST_METHOD $request_method;

  74. fastcgi_param CONTENT_TYPE $content_type;

  75. fastcgi_param CONTENT_LENGTH $content_length;

  76. fastcgi_param SCRIPT_NAME $fastcgi_script_name;

  77. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

  78. fastcgi_param REQUEST_URI $request_uri;

  79. fastcgi_param DOCUMENT_URI $document_uri;

  80. fastcgi_param DOCUMENT_ROOT $document_root;

  81. fastcgi_param SERVER_PROTOCOL $server_protocol;

  82. fastcgi_param GATEWAY_INTERFACE CGI/1.1;

  83. fastcgi_param SERVER_SOFTWARE nginx;

  84. fastcgi_param REMOTE_ADDR $remote_addr;

  85. fastcgi_param REMOTE_PORT $remote_port;

  86. fastcgi_param SERVER_ADDR $server_addr;

  87. fastcgi_param SERVER_PORT $server_port;

  88. fastcgi_param SERVER_NAME $server_name;

  89. fastcgi_read_timeout 600; # Set fairly high for debugging

  90. fastcgi_pass 127.0.0.1:9001; # Non-default port

  91. fastcgi_index index.php;

  92. }

  93. sudo nano /usr/local/nginx/conf/sites-available/example.conf

  94. server

  95. {

  96. listen 80;

  97. server_name example.local;

  98. root /Users/collin/Sites/example/public;

  99. access_log /Users/collin/Sites/example/logs/access_log.txt;

  100. error_log /Users/collin/Sites/example/logs/error_log.txt;

  101. location /

  102. {

  103. index index.php;

  104. try_files $uri $uri/ /index.php?q=$uri&$args;

  105. }

  106. include php.conf;

  107. }

  108. 安装PHP PHP-FPM

  109. 下载源码

  110. curl -O http://us2.php.net/distributions/php-5.3.6.tar.gz

  111. tar -xzf php-5.3.6.tar.gz

  112. cd php-5.3.6

  113. 编译

  114. ./configure --prefix=/usr/local/php \

  115. --mandir=/usr/share/man \

  116. --infodir=/usr/share/info \

  117. --sysconfdir=/private/etc \

  118. --enable-cli \

  119. --with-config-file-path=/usr/local/php/etc \

  120. --with-libxml-dir=/usr \

  121. --enable-xml \

  122. --with-openssl=/usr \

  123. --with-kerberos=/usr \

  124. --with-zlib=/usr \

  125. --enable-bcmath \

  126. --with-bz2=/usr \

  127. --enable-calendar \

  128. --with-curl=/usr \

  129. --enable-exif \

  130. --enable-ftp \

  131. --with-gd \

  132. --with-jpeg-dir=/usr/local/Cellar/jpeg/8c/lib \

  133. --with-png-dir=/usr/X11 \

  134. --enable-gd-native-ttf \

  135. --with-ldap=/usr \

  136. --with-ldap-sasl=/usr \

  137. --enable-magic-quotes \

  138. --enable-mbstring \

  139. --enable-mbregex \

  140. --enable-json \

  141. --with-mysql=mysqlnd \

  142. --with-mysqli=mysqlnd \

  143. --with-pdo-mysql=mysqlnd \

  144. --with-mysql-sock=/tmp/mysql.sock \

  145. --with-iodbc=/usr \

  146. --enable-shmop \

  147. --with-snmp=/usr \

  148. --enable-soap \

  149. --enable-sockets \

  150. --with-sqlite \

  151. --enable-sysvmsg \

  152. --enable-sysvsem \

  153. --enable-sysvshm \

  154. --enable-wddx \

  155. --enable-fpm \

  156. --with-mhash \

  157. --with-mcrypt \

  158. --with-xmlrpc \

  159. --enable-xmlwriter \

  160. --enable-xmlreader \

  161. --with-iconv-dir=/usr \

  162. --with-xsl=/usr \

  163. --enable-zend-multibyte \

  164. --enable-zip \

  165. --with-pcre-regex=/usr \

  166. --with-pdo-sqlite \

  167. --enable-pdo \

  168. --enable-dba \

  169. --with-freetype-dir=/usr/X11 \

  170. --enable-dom \

  171. --enable-gd-native-ttf \

  172. --enable-posix \

  173. --enable-fileinfo




  174. make

  175. sudo make install

  176. 配置PHP&PHP-FPM

  177. sudo cp /private/etc/php-fpm.conf.default /private/etc/php-fpm.conf

  178. sudo nano /private/etc/php-fpm.conf

  179. [global]

  180. pid = /usr/local/php/var/run/php-fpm.pid

  181. daemonize = yes

  182. [www]

  183. listen = 127.0.0.1:9000

  184. user = ray

  185. group = staff

  186. pm = dynamic

  187. pm.max_children = 10

  188. pm.start_servers = 5

  189. pm.min_spare_servers = 5

  190. pm.max_spare_servers = 10

  191. pm.max_requests = 500

  192. sudo mkdir /usr/local/php/etc

  193. sudo cp /private/etc/php.ini.default /usr/local/php/etc/php.ini

  194. 自动启动php-fpm

  195. sudo nano /Library/LaunchDaemons/net.php.php-fpm.plist

  196. <?xml version="1.0" encoding="UTF-8"?>

  197. <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

  198. <plist version="1.0">

  199. <dict>

  200. <key>KeepAlive</key>

  201. <true/>

  202. <key>Label</key>

  203. <string>net.php.php-fpm</string>

  204. <key>LaunchOnlyOnce</key>

  205. <true/>

  206. <key>NetworkState</key>

  207. <true/>

  208. <key>ProgramArguments</key>

  209. <array>

  210. <string>/usr/local/php/sbin/php-fpm</string>

  211. </array>

  212. <key>RunAtLoad</key>

  213. <true/>

  214. <key>ServiceDescription</key>

  215. <string>PHP FastCGI Process Manager</string>

  216. <key>StandardErrorPath</key>

  217. <string>/var/log/system.log</string>

  218. </dict>

  219. </plist>

  220. 停止php-fpm

  221. sudo kill `cat /usr/local/php/var/run/php-fpm.pid`

  222. 启动 php-fpm
  223. sudo /usr/local/php/sbin/php-fpm.dSYM
复制代码

论坛徽章:
0
2 [报告]
发表于 2011-12-20 12:53 |只看该作者
谢谢学习鸟
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP