基于阿里云服务器Centos7.2的Linux系统编译

官网下载源码包

cd /xx/

wget https://nginx.org/download/nginx-1.12.2.tar.gz

建立一个nginx用户

useradd -r -d /dev/null -s /sbin/nologin nginx

tar xf nginx-1.12.2.tar.gz

cd nginx-1.12.2

./configure –prefix=/xx/nginx –user=nginx –group=nginx –with-http_gzip_static_module –with-http_stub_status_module –with-http_ssl_module –with-pcre=/xx/pcre-8.41/

make

make install

配置优化PHP的fastcgi配置文件,并启动fastcgi模式的php

cp -a /xx/php/etc/php-fpm.d/www.conf.default /xx/php/etc/php-fpm.conf

vim /xx/php/etc/php-fpm.conf        —-数字为行号
23 user = nginx
24 group = nginx
36 listen = /var/run/fastcgi/fastcgi.socket
47 listen.owner = nginx
48 listen.group = nginx
49 listen.mode = 0660
96 pm = dynamic                                      —对于专用服务器,pm可以设置为static
107 pm.max_children = 64                  —子进程最大数
112 pm.start_servers = 20                  —启动时的进程数
117 pm.min_spare_servers = 5         —保证空闲进程数最小值,如果空闲进程小于此值,则创建新的子进程
122 pm.max_spare_servers = 35    —-保证空闲进程数最大值,如果空闲进程大于此值,此进行清理
133 pm.max_requests = 3000
334 rlimit_files = 65535
410 php_flag[display_errors] = on

mkdir /var/run/fastcgi

chown nginx.nginx /var/run/fastcgi/

/lx/php/sbin/php-fpm -D -y /lx/php/etc/php-fpm.conf       —启动进程

如果要关闭,直接pkill -9 fpm即可

ps -ef | grep fpm     —能看到有20个进程,即为成功

配置nginx.conf主配置文件

vim /xx/nginx/conf/nginx.conf
user nginx nginx; —运行用户和组
worker_processes 4; —启动服务工作进程数
error_log logs/error.log info; —错误日志以及日志等级
pid logs/nginx.pid; —pid文件
worker_rlimit_nofile 65535; —每个进程允许打开的并发连接数 总连接数=worker_processes*worker_connections
events {
use epoll;
worker_connections 65535;
multi_accept on;
}
http {
include mime.types;
default_type application/octet-stream;
server_tokens off;
sendfile on;
tcp_nopush on;
keepalive_timeout 65;
gzip on;
server {
listen 80; —监听的端口
server_name localhost; —域名或IP
charset utf8; —字符集

root /xx/nginx/html/; —网页家目录
index index.php index.html index.htm; —主页文件

error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location ~ .*\.php$ {
fastcgi_pass unix:/var/run/fastcgi/fastcgi.socket; —对应php-fpm.conf里的设置
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; —把/scripts改成$document_root,表示家目录下的.php文件也当会以php来执行
include fastcgi_params;
}
}
}

ulimit -SHn 65535

启动nginx
/xx/nginx/sbin/nginx

重新读取配置文件
/xx/nginx/sbin/nginx -s reload

关闭nginx
/xx/nginx/sbin/nginx -s stop

验证
echo “这是一个测试页面” > /lx/nginx/html/index.html
vim /lx/nginx/html/test.php

网页验证 http://localhost/test.php 能验证支持PHP

nginx1.12.2编译成功!

到此,结合前面的文章,整个基本的LNMP搭建完成!

发表评论

电子邮件地址不会被公开。 必填项已用*标注