nginx的安装

发表时间:2017-07-18 21:27:40 浏览量( 50 ) 留言数( 0 )

学习目标:

1、掌握Nginx的安装和基本的配置


学习过程:

0、生产环境的安装

应该需要手动创建nginx属主和nginx属组。

groupadd nginx

useradd nginx -g nginx -s /sbin/nologin -M

再后面安装编译的时候,指定执行的用户主和用户组

--user=nginx

--group=nginx

nginx编译安装完成以后,还需要修改nginx.conf

user nginx nginx;

当然这个要注意的是权限的问题。

1、安装前的准备

参考这个可以把yum的地址换成国内的

http://mirrors.aliyun.com/help/centos?spm=5176.bbsr150321.0.0.d6ykiD

一般我们都需要先装pcre, zlib,前者为了重写rewrite,后者为了gzip压缩。 

yum install pcre* -y

yum install openssl -y 

yum install zlib -y

yum install -y zlib-devel -y

2.安装nginx

 

Nginx 一般有两个版本,分别是稳定版和开发版,您可以根据您的目的来选择这两个版本的其中一个,下面是把 Nginx 安装到 /usr/local/nginx 目录下的详细步骤:

官网:http://nginx.org/

下载:

cd /usr/local

wget http://nginx.org/download/nginx-1.10.1.tar.gz

tar -zxf  nginx-1.10.1.tar.gz

cd nginx-1.10.1

./configure --prefix=/usr/local/nginx  --user=nginx --group=nginx

make && make install

这样就安装成功了,默认就会安装到/usr/local/nginx目录下面的。命令和配置文件也时在这个目录下面。

先进入配置文件,修改用户配置。

cd /usr/local/nginx/conf/nginx.conf

nginx编译安装完成以后,修改nginx.conf

user nginx nginx;

具体的选项参考文章最后的说明。


3、启动

[root@run1 nginx]# ./sbin/nginx

检查是否启动成功:

netstat -ano|grep 80

有结果输出说明启动成功

打开浏览器访问此机器的 IP,如果浏览器出现 Welcome to nginx! 则表示 Nginx 已经安装并运行成功。

attcontent/10f7a8b5-f56f-460f-bf44-dce3aca2dd36.png

记得打开防火墙的配置

vim /etc/sysconfig/iptables

添加一下内容,保存退出

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

重启 防火墙

/etc/init.d/iptables restart


4.重新加载,这个命令比较常用,如果修改了nginx.conf的配置,我们并不需要重启nginx,只需要重新加载一下。

/usr/local/nginx/sbin/nginx –s reload


5、测试配置文件是否正确,这个在修改了配置文件之后非常好用。

[root@run1 nginx]# ./sbin/nginx -t

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful


6、nginx命令:停止nginx

  停止nginx的命令主要有两种,即

[root@run1 nginx]# ./sbin/nginx -s stop

或者

[root@run1 nginx]# ./sbin/nginx -s quit

nginx停止命令stop与quit参数的区别在于stop是快速停止nginx,可能并不保存相关信息,quit是完整有序的停止nginx,并保存相关信息。


  • 安装是选项参考:

--prefix=PATH : 指定nginx的安装目录。默认 /usr/local/nginx

--conf-path=PATH : 设置nginx.conf配置文件的路径。nginx允许使用不同的配置文件启动,通过命令行中的-c选项。默认为prefix/conf/nginx.conf

--user=name: 设置nginx工作进程的用户。安装完成后,可以随时在nginx.conf配置文件更改user指令。默认的用户名是nobody。--group=name类似

--with-pcre : 设置PCRE库的源码路径,如果已通过yum方式安装,使用--with-pcre自动找到库文件。使用--with-pcre=PATH时,需要从PCRE网站下载pcre库的源码(版本4.4 - 8.30)并解压,剩下的就交给Nginx的./configure和make来完成。perl正则表达式使用在location指令和 ngx_http_rewrite_module模块中。

--with-zlib=PATH : 指定 zlib(版本1.1.3 - 1.2.5)的源码解压目录。在默认就启用的网络传输压缩模块ngx_http_gzip_module时需要使用zlib 。

--with-http_ssl_module : 使用https协议模块。默认情况下,该模块没有被构建。前提是openssl与openssl-devel已安装

--with-http_stub_status_module : 用来监控 Nginx 的当前状态

--with-http_realip_module : 通过这个模块允许我们改变客户端请求头中客户端IP地址值(例如X-Real-IP 或 X-Forwarded-For),意义在于能够使得后台服务器记录原始客户端的IP地址

--add-module=PATH : 添加第三方外部模块,如nginx-sticky-module-ng或缓存模块。每次添加新的模块都要重新编译(Tengine可以在新加入module时无需重新编译)