十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
方法一:
成都创新互联公司2013年成立,是专业互联网技术服务公司,拥有项目成都网站制作、网站设计、外贸网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元观山湖做网站,已为上家服务,为观山湖各地企业和个人服务,联系电话:13518219792
首先由于nginx的一些模块依赖一些lib库,所以在安装nginx之前,必须先安装这些lib库,这些依赖库主要有g++、gcc、openssl-devel、pcre-devel和zlib-devel 所以执行如下命令安装。
# yum install gcc-c++
# yum install pcre pcre-devel
# yum install zlib zlib-devel
# yum install openssl openssl--devel
安装Nginx
检查一下是否已经安装有nginx
# find -name nginx
如果系统已经安装了nginx,那么就先卸载
# yum remove nginx
开始安装nginx
进入你自己的文件位置开始下载
# wget http://nginx.org/download/nginx-1.12.0.tar.gz
# tar -zxvf nginx-1.12.0.tar.gz
# cd nginx-1.12.0
# ./configure
# make
# make install
查看nginx版本
# /usr/local/nginx/sbin/nginx -V
启动和重启Nginx
启动:
# /usr/local/nginx/sbin/nginx
重启
# /usr/local/nginx/sbin/nginx -s reload
停止
# /usr/local/nginx/sbin/nginx -s stop
停止进程
#查询nginx主进程号
# ps -ef | grep nginx
停止进程
# kill -QUIT 主进程号
快速停止
# kill -TERM 主进程号
强制停止
# pkill -9 nginx
测试端口
# netstat –na|grep 80
添加防火墙端口
# vi /etc/sysconfig/iptables
生效
# /etc/init.d/iptables restart
【扩展】
[root@bogon nginx-1.12.0]# netstat -anpt | grep nginx
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 5502/nginx
[root@bogon nginx-1.12.0]# ss -tnlp | grep 80 //可以发现启动用户和组为nginx
LISTEN 0 128 *:80 *:* users:(("nginx",5502,6),("nginx",5503,6))
4、查看nginx的进程情况
[root@bogon nginx-1.12.0]# ps aux | grep nginx //发现只启动了一个master进程和一个worker进程
root 5502 0.0 0.1 44824 1176 ? Ss 22:58 0:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx 5503 0.0 0.1 45260 1760 ? S 22:58 0:00 nginx: worker process
root 5544 0.0 0.0 103328 848 pts/0 S+ 23:02 0:00 grep nginx
我们查看一下主配置文件看看是什么情况
[root@bogon nginx-1.12.0]# vi /etc/nginx/nginx.conf
3 worker_processes 1; //原因在这里,配置文件只定义了启动一个,我们修改成两个看一下效果
3 worker_processes 2; //修改后
[root@bogon nginx-1.12.0]# /usr/local/nginx/sbin/nginx -s stop
[root@bogon nginx-1.12.0]# /usr/local/nginx/sbin/nginx
[root@bogon nginx-1.12.0]# ps aux | grep nginx //重启服务后可以发现worker进程变成了两个
root 5557 0.0 0.1 44824 1176 ? Ss 23:07 0:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx 5558 0.0 0.1 45260 1792 ? S 23:07 0:00 nginx: worker process
nginx 5559 0.0 0.1 45260 1760 ? S 23:07 0:00 nginx: worker process
root 5561 0.0 0.0 103328 848 pts/0 S+ 23:07 0:00 grep nginx
二、配置nginx
1、配置文件组成:主配置文件nginx.conf;fastcgi配置文件fastcgi_params;
2、注意事项:必须以分号结尾;支持内置变量(由模块引入)和自定义变量(set 变量名 值,引用时使用$变量名即可)
3、配置文件的结构:
全局配置
event{
...... //主要提供用户并发连接的配置
}
http{
...... //配置http服务的配置,而且可以定义虚拟主机server
}
4、解释说明
全局配置段:
类别:正常运行必备的配置;优化性能相关的配置;用于调试、定位问题的配置。
正常运行必备的配置:
user nginx nginx; //指定运行worker进程的用户和组
pid /var/run/nginx.pid; //指定nginx进程的pid文件路径
worker_rlimit_nofile 1024; //指定每一个worker进程最大打开的文件描述符数量
worker_rlimit_slgpending 1024; //指定每个用户能够发往worker进程的最大信号数量
优化性能相关的配置:
worker_processes 4; //打开的worker进程数量,通常为物理CPU核心数量减一,可以避免进程切换带来的损失,也可以加auto参数自动分配
#worker_processes auto;
worker_cpu_affinity 0001 0010 0100 1000; //绑定CPU,但是没有实现隔离
worker_priority nice; 区间是-20,19,值越小优先级越高
[root@bogon nginx]# ps axo comm,pid,nice | grep nginx 查看nice值
nginx 5557 0
nginx 5558 0
nginx 5559 0
[root@bogon nginx]# lscpu //查看CPU
用于调试、定位问题的配置:
daemon on; //是否以守护进程的方式启动nginx
master_process on;是否以master/worker模型运行nginx
error_log /var/log/nginx/error.log; //后面可以加级别,出于调试的需要可以设定为debug,但是必须在编译时使用-with-debug选项编译时生效
方法二:
自动安装选择最快的源
# yum install yum-fastestmirror
安装nginx
# yum install nginx
自己配置nginx 源
# vi /etc/yum.repos.d/nginx.repo
#nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/$basearch/
gpgcheck=0
enabled=1