Nginx安装
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行。
编译环境安装
我们默认你是安装好了的,如果没有安装的话,请用下面命令安装
make安装:1
yum -y install gcc automake autoconf libtool make
g++安装:
1
yum install gcc gcc-c++
依赖包安装
我们选择/usr/local/src作为源码目录。Nginx需要依赖下面3个包:rewrite模块需要 pcre 库
1
2
3
4
5
6
7cd /usr/local/src
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.37.tar.gz
tar -zxvf pcre-8.37.tar.gz
cd pcre-8.37
./configure
make
make installgzip模块需要 zlib 库
1
2
3
4
5
6
7cd /usr/local/src
wget http://zlib.net/zlib-1.2.8.tar.gz
tar -zxvf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make
make installssl 功能需要openssl库
1
2
3
4
5
6
7cd /usr/local/src
wget http://www.openssl.org/source/openssl-1.0.1q.tar.gz
tar -zxvf openssl-1.0.1q.tar.gz
cd openssl-1.0.1q
./config
make
make install
Nginx安装
1
2
3
4
5
6
7cd /usr/local/src
wget http://nginx.org/download/nginx-1.8.0.tar.gz
tar -zxvf nginx-1.8.0.tar.gz
cd nginx-1.8.0
./configure --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.37 --with-zlib=/usr/local/src/zlib-1.2.8 --with-openssl=/usr/local/src/openssl-1.0.1q
make
make installNote: 开始我用pcre2,会有以下错误:pcre.h:没有那个文件或目录,后来切换到pcre,安装成功。
Nginx启动检查
a. 确保系统的 80 端口没被其他程序占用。1
netstat -ano|grep 80
Notes:我的CentoOS上已经安装了Apache,端口被占用,先关闭
service httpd stop
。
b. 启动1
/usr/local/nginx/nginx
c. 验证
打开浏览器,打开此电脑IP地址:
php-fpm安装
nginx只是个web服务器,本身不能处理PHP,当接收到请求后,如果是php请求,则发给php解释器处理,并把结果返回给客户端。
nginx一般是把请求发fastcgi管理进程处理,fascgi管理进程选择cgi子进程处理结果并返回被nginx。 PHP-FPM是一个PHP FastCGI管理器
目前的PHP已经集成php-fpm了,我们只要安装一下PHP就可以了。
依赖包安装
1
yum -y install libmcrypt-devel mhash-devel libxslt-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel
PHP安装
1
2
3
4
5
6
7cd /usr/local/src
wget http://cn2.php.net/distributions/php-5.5.30.tar.gz
tar -zxvf php-5.5.30.tar.gz
cd php-5.5.30
./configure --prefix=/usr/local/php --enable-fpm --enable-mbstring --disable-pdo --with-curl --disable-debug --disable-rpath --enable-inline-optimization --with-bz2 --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --with-mhash --enable-zip --with-pcre-regex --with-mysql --with-mysqli --with-gd --with-jpeg-dir
make
make installphp-fpm设置运行用户
1
2cd /usr/local/php/etc
cp php-fpm.conf.default php-fpm.conf
Nginx配置支持php-fpm
1 | cd /usr/local/nginx |
修改文件以下部分:
1
2
3
4
5
6
7location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /$document_root$fastcgi_script_name;
include fastcgi_params;
}
测试
创建php文件
在/usr/local/nginx/html下创建index.php文件,输入如下内容1
2
3<?php
echo phpinfo();
?>启动服务(如果Nginx和php-fpm没有启动)
1
/usr/local/nginx/nginx
1
/usr/local/php/sbin/php-fpm
浏览器查看
打开浏览器,访问http://此电脑IP/index.php: