Ubuntu Nginx安装

时间:2023-03-08 16:53:01
  1. 1、先更新ubuntu系统

    更新命令

    sudo apt-get update

    sudo apt-get upgrade

  2. 2

    添加ubuntu nginx更新源镜像

    cd /etc/apt/

    sudo cp sources.list sources.list_bak

    将如下代码添加到sources.list文件中

    deb http://nginx.org/packages/ubuntu/ precise nginx

    deb-src http://nginx.org/packages/ubuntu/ precise nginx

    使用

    sudo vi sources.list

    如果提示: W: GPG error: http://nginx.org precise Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY ABF5BD827BD9BF62 由于官方不信任该源

    解决方法: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ABF5BD827BD9BF62

  3. 3

    3、更新和安装update and install

    sudo apt-get update

    sudo apt-get install nginx

  4. 4、启动nginx

    sudo /etc/init.d/nginx start

  5. 5、check version

    nginx -v

  6. 6、配置php+mysql

    sudo apt-get install php5-cli php5-cgi mysql-server php5-mysql

  7. 7、安装FastCgi

    sudo apt-get install spawn-fcgi

  8. 8、配置nginx

    8.1、修改nginx的配置文件:/etc/nginx/sites-available/default 修改主机名

    server_name localhost;

    8.2、修改index的一行,添加index.php

    index index.php index.html index.htm;

    8.3、去掉下面部分的注释用于支持 php 脚本:

    location ~ .php$ {    include /etc/nginx/fastcgi_params; #需放在第一行,否则会出错    fastcgi_pass 127.0.0.1:9000;    fastcgi_index index.php;    fastcgi_param SCRIPT_FILENAME /var/www/nginx-default$fastcgi_script_name; }

  9. 9、 重新启动nginx

    /etc/init.d/nginx stop

    /etc/init.d/nginx start

  10. 10、启动fastcgi php

    spawn-fcgi -a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi

  11. 11、nginx提示502 错误

    nginx 502 Bad Gateway没有启动,启动命令是:

    spawn-fcgi -a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi

  12. 12、设置开机自启动

    Ubuntu开机之后会执行/etc/rc.local文件中的脚本

    所以我们可以直接在/etc/rc.local中添加启动脚本。

    spawn-fcgi -a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi 添加到语句: exit 0

    前面才行

  13. 13、no input file specified错误

    sudo vi /etc/nginx/sites-available/default

    其中这个字段

    location ~ .php$ {

    root html;

    fastcgi_pass 127.0.0.1:9000;

    fastcgi_index index.php;

    fastcgi_param SCRIPT_FILENAME /var/www/nginx-default$fastcgi_script_name;

    include fastcgi_params;

    }

    注意

    fastcgi_param SCRIPT_FILENAME /var/www/nginx-default$fastcgi_script_name;

    /var/www/nginx-default 改为你的网站根目录,一般就是改成这个。

    server 字段下root 目录和网站根目录保持一致

    其中FastCGI和php5-fpm都用来解析php模块的,所以随意安装其中一个即可,然后配置文件里有两个 location ~ .php$ ,只取消最下面的这个注释;先安装Nginx,然后测试下可否工作,再 安装php cgi spawn-fcgi 这些模块,修改下配置文件,即可。