准备工作
导入密钥
wget http://www.dotdeb.org/dotdeb.gpg sudo apt-key add dotdeb.gpg
添加源
vi /etc/apt/sources.list deb http://mirror.us.leaseweb.net/dotdeb/ stable all deb-src http://mirror.us.leaseweb.net/dotdeb/ stable all
安装
一、安装MySql
sudo apt-get install mysql-server mysql-client
需要下载 47.9 MB 的软件包。 解压缩后会消耗掉 162 MB 的额外空间。这里获取的是5.6版本
二、安装Nginx
sudo apt-get install nginx-full
需要下载 655 kB 的软件包。 解压缩后会消耗掉 1,466 kB 的额外空间。
三、安装PHP
sudo apt-get install php5-fpm php5-gd php5-mysql
需要下载 4,039 kB 的软件包。 解压缩后会消耗掉 11.8 MB 的额外空间。
配置
配置nginx
sudo vi /etc/nginx/sites-available/default
把内容改为如下:
server { listen 80; root /usr/share/nginx/html; index index.php index.html index.htm; server_name localhost; location / { try_files $uri $uri/ /index.html; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 location ~ .php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
重启nginx
sudo service nginx restart
配置PHP
sudo vi /etc/php5/fpm/php.ini
把cgi.fix_pathinfo=1 改为 0
cgi.fix_pathinfo=0
sudo nano /etc/php5/fpm/pool.d/www.conf
把listen = 127.0.0.1:9000 改为(实际这个文件中已经是这样了,不需要更改。)
listen = /var/run/php5-fpm.sock
重启php-fpm
sudo service php5-fpm restart
测试PHP
vi /usr/share/nginx/html/phpinfo.php
<?php phpinfo(); ?>
--2014.5.28 更新--
前两天更新了系统后再http://localhost/phpinfo.php 打不开了!
解决办法如下:
sudo vi /etc/nginx/sites-available/default
更改location:
location ~ .php$ { try_files $uri =404; #fastcgi_pass unix:/var/run/php5-fpm.sock; root /usr/share/nginx/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
然后
sudo vi /etc/php5/fpm/pool.d/www.conf
把listen = /var/run/php5-fpm.sock 改为(这样又改回去了......)
listen = 127.0.0.1:9000
最后重启下服务:
sudo service php5-fpm restart sudo service nginx restart
参考:https://bbs.archlinux.org/viewtopic.php?id=167817
----2014.06.18-更新---------------------
其实default文件还可以这样写:
server{
listen 80;#服务器监听的端口
root /usr/share/nginx/html;#文件存放路径
server_name localhost;#匹配url地址,如hello.com;
#访问地址(/ 根目录,上面设置的root )
location / {
try_files $uri $uri/ /index.html;
}
#访问php文件的设置
location ~.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
--END--