Ubuntu安装LNMP架构FastCgi配合

安装nginx

?
1
sudo apt-get install nginx

Ubuntu安装之后的文件结构大致为:

  • 所有的配置文件都在/etc/nginx下,并且每个虚拟主机已经安排在了/etc/nginx/sites-available下
  • 程序文件在/usr/sbin/nginx
  • 日志放在了/var/log/nginx中
  • 并已经在/etc/init.d/下创建了启动脚本nginx
  • 默认的虚拟主机的目录设置在了/var/www/nginx-default (有的版本 默认的虚拟主机的目录设置在了/var/www, 请参考/etc/nginx/sites-available里的配置)

如果使用源码包安装也一样,只不过是配置文件等路径和开启关闭Nginx的区别。

编译Nginx需要安装GCC编译器

Shell>sudo apt-get install autoconf automake build-essential

模块依赖性:nginx的一些模块需要第三方库支持,例如gzip模块需要zlib库,rewrite模块需要pcre库,ssl功能需要openssl库等。

Shell>sudo apt-get install zlib1g openssl libssl-dev libpcre3 libpcre3-dev 


普通安装Nginx:

Nginx安装 

Shell> ./configure \

--prefix=/usr/local/nginx \

--with-http_stub_status_module \

--with-http_ssl_module

Shell>make

Shell>make install


Nginx启动

Shell>./nginx -c /usr/local/nginx/conf/nginx.conf

参数-c指定了配置文件的路径,如果不加-c参数,Nginx会默认加载其安装目录的下的conf子目录中的nginx.conf文件。


查看端口号

shell> sudo lsof -i tcp:80

shell>netstat -ntlp



[启动nginx]

sudo /etc/init.d/nginx start

然后就可以访问了,http://localhost/ , 一切正常!如果不能访问,先不要继续,看看是什么原因,解决之后再继续。 (安装完后如出现403错误,那可能是nginx配置文件里的网站路径不正确,具体解决方法本博客有文章)


配置php和mysql

安装Php和mysql

安装php和MySQL:


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


这里最重要的是记得要安装php5-cli和php5-cgi,因为后面的fastCgi主要是借助于php5-cgi启动。


安装FastCgi

/usr/bin/spawn-fcgi这个文件来管理 FastCgi,它原属于lighttpd这个包里面,但 9.10 后,spawn-fcgi 被分离出来单独成包:


?
1
sudo apt-get install spawn-fcgi



配置 nginx

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

server_name localhost;

修改index的一行修改为:

index index.php index.html index.htm;

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

?
1
2
3
4
5
6
location ~ \.php$ {
     fastcgi_pass 127.0.0.1:9000;
     fastcgi_index index.php;
     fastcgi_param SCRIPT_FILENAME / var /www/nginx- default $fastcgi_script_name ;
     include /etc/nginx/fastcgi_params;
}

重新启动nginx:

?
1
/etc/init.d/nginx stop /etc/init.d/nginx start

启动fastcgi php:

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

为了让php-cgi开机自启动: Ubuntu开机之后会执行/etc/rc.local文件中的脚本 所以我们可以直接在/etc/rc.local中添加启动脚本。

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


创建、测试phpinfo:

sudo vi /var/www/nginx-default/info.php

打开 http://localhost/info.php 。

你可能感兴趣的:(Linux,Nginx)