日期:2014-05-17  浏览次数:20439 次

Ubuntu下安装PHP+Nginx

?系统环境:Ubuntu12.04 desktop

?

?

1、sudo apt-get install php5-cgi

???(因为nginx只支持fast-cgi,所以要安装php5-cgi)

?提示安装以下资源

?

将会安装下列额外的软件包:
  libapache2-mod-php5 php5-cli php5-common php5-gd php5-mysql
建议安装的软件包:
  php-pear php5-suhosin
下列【新】软件包将被安装:
  php5-cgi
下列软件包将被升级:
  libapache2-mod-php5 php5-cli php5-common php5-gd php5-mysql

?

2、sudo apt-get install nginx

?

?

3、vim /etc/nginx/site-available/default

?

server {
 21         #listen   80; ## listen for ipv4; this line is default and implied
 22         #listen   [::]:80 default ipv6only=on; ## listen for ipv6
 23 
 24         root /usr/share/nginx/www;
 25         index index.html index.htm;
 26 
 27         # Make site accessible from http://localhost/
 28         server_name localhost;
 29 
 30         location / {
 31                 # First attempt to serve request as file, then
 32                 # as directory, then fall back to index.html
 33                 try_files $uri $uri/ /index.html;
 34                 # Uncomment to enable naxsi on this location
 35                 # include /etc/nginx/naxsi.rules
 36         }
 37 
 38         location /doc/ {
 39                 alias /usr/share/doc/;
 40                 autoindex on;
 41                 allow 127.0.0.1;
 42                 deny all;
 43         }
 44 
 45         # Only for nginx-naxsi : process denied requests
 46         #location /RequestDenied {
 47                 # For example, return an error code
 48                 #return 418;
 49         #}
 50 
 51         #error_page 404 /404.html;
 52 
 53         # redirect server error pages to the static page /50x.html
 54         #
 55         #error_page 500 502 503 504 /50x.html;
 56         #location = /50x.html {
 57         #       root /usr/share/nginx/www;
 58         #}
 59 
 60         # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
 61         #
 62         location ~ \.php$ {
 63         #       fastcgi_split_path_info ^(.+\.php)(/.+)$;
 64         #       # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
 65         #
 66         #       # With php5-cgi alone:
 67                 fastcgi_pass 127.0.0.1:9000;
 68         #       # With php5-fpm:
 69         #       fastcgi_pass unix:/var/run/php5-fpm.sock;
 70                 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 71                 fastcgi_index index.php;
              }                                                      

?

?sudo /etc/init.d/nginx restart ?(注意这里以sduo的方式重启,否则因为权限文件报错)

?

4、vim index.php ? (在 ?/usr/share/nginx/www 下面创建文件index.php测试)

?

?

<?php

echo "hello world";

?>
?

结果出现如下错误:connect() failed (111: Connection refused) while connecting to upstream

?

那是因为没有安装 ?php5-fmp

?

5、sudo apt-get install php5-fmp

?

重启nginx服务后就可以看到页面结果了。

?

?

补充:安装phpmyadmin的时候报错:?phpmyadmin缺少mysqli扩展

?

检查/etc/php5/apache2/php.ini文件下extension=php_mysqli.dll是否启用

?

?

?

?

?

?

?