nginx安装
安装前需要的环境:wget、gcc、pcre、openssl、zlib
(1)wget 用于从外网上下载插件
检查系统中是否已经安装wget,使用命令若出现下图wget相关版本描述则说明系统中已经安装wget 若报系统找不到命令说明wget未安装
若wget未安装则进行安装,安装命令yum -y install wget
(2) gcc安装
nginx需要先将官网下载的源码进行编译,编译依赖gcc环境
检查系统中是否已经安装gcc,使用命令gcc –v 若出现下图gcc相关版本描述则说明系统中已经安装gcc 若报系统找不到命令说明gcc未安装
若gcc未安装则进行安装,安装命令yum install gcc-c++
若出现问题:
则解决方案为:
参考: SSH and Yum don’t work in clean CentOS 7
若出现问题:
解决方案:清理一下安装包,命令: yum clean all
然后重新执行安装命令: yum install gcc-c+
(3)PCRE(Perl Compatible Regular Expressions)安装
它是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库;
检查系统中是否已经安装pcre,使用命令man pcre 若出现下图pcre相关描述则说明系统中已经安装pcre 若报系统找不到命令说明pcre未安装
若pcre未安装则进行安装,安装命令yum install -y pcre pcre-devel
(4)OpenSSL安装
它是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用; nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在linux安装openssl库
检查系统中是否已经安装openssl,使用命令openssl 若出现下图openssl相关描述则说明系统中已经安装oqpenssl 若报系统找不到命令说明openssl未安装
若pcre未安装则进行安装,安装命令yum install -y openssl openssl-devel
(5)zlib库安装
它提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装zlib库
检查系统中是否已经安装zlib,使用命令man zlib若出现下图zlib相关描述则说明系统中已经安装zlib 若报系统找不到命令说明zlib未安装
若zlib未安装则进行安装,安装命令yum install -y zlib zlib-devel
(6)Nginx的安装及配置:
(1)下载安装包
进入一个目录(随便一个目录即可,用来存放下载的Nginx的包,在此以/root目录为例)命令:cd /root
下载nginx安装包,本文用例 nginx1.10.3(目前最新为nginx1.13.6通过官网— http://nginx.org/download可查看)命令:wget http://nginx.org/download/nginx-1.10.3.tar.gz
(2)解压nginx的tar包,命令: tar -zxvf ./nginx-1.10.3.tar.gz
(3)查看是否解压成功,命令: ls
(4)进入刚解压的的目录,命令: cd nginx-1.10.3
在/root 目录下新建一个nginx文件
(5)进行配置(在此将nginx安装指向/usr/local/nginx/ 目录下,命令:
./configure –prefix=/usr/local/nginx/
(6)进行编译和安装(在源码的位置,本教程中为 /root/nginx-1.10.3)命令:
make && make install
(7)整个验证、编译、安装过程不应该报任何错误,如果在(6)使用prefix设置了安装目标目录,那么还需要在/etc/profile文件中设置环境变量,在最末尾加入export PATH=/usr/local/nginx/sbin:$PATH (其中的# add nginx path为注释建议加上)命令:
vi /etc/profile
备注:环境变量一般指操作系统中用来指定操作系统运行环境的一些参数,相当于设置了一个启动软件(如mysql/jdk)等快速路径,方便用户使用。
用命令: source /etc/profile 使环境变量生效
用命令export 查看环境变量发现刚设置的Nginx目录没有进去
(8)检查是否安装成功,进入到etc目录(cd /etc)中执行命令: nginx –t 若正确如下图,若不正确则会给出相应的错误提示
(9)对Nginx配置文件进行配置,Nginx配置文件的位置: /usr/local/nginx-1.10.3/conf/nginx.conf ,在此用WinSCP进行编辑,也可以用Linux的vi编辑器进行编辑 (关于nginx的配置文件内容,下面会单独来讲的)
(10)将配置文件修改为配置文件在Nginx安装目录下的conf中的nginx.conf,命令:
/usr/local/nginx-1.10.3/sbin/nginx -c /usr/local/nginx-1.10.3/conf/nginx.conf
(11)启动nginx 命令:nginx
查看Nginx状态,命令: ps -ef | grep nginx ,以下为正确(其中第三个为使用ps命令产生的进程)
(12)测试,启动Nginx的情况下在外部用浏览器访问刚才在配置文件中配置的地址
(13)若访问不到查看Linux防火墙,确保开放80端口(该端口根据配置文件中配置监听端口所定在本教程中为80端口)或关闭防火墙;为安全起见建议采用开放端口形式
A.防火墙相关检查相关命令
①查看状态:firewall-cmd –state
开启状态—running
关闭状态—not runing
②关闭防火墙:service firewalld stop
③打开防火墙: service firewalld start
注意:安装的centos的版本为7,在其他的版本下,关于防火墙的命令需要安装插件才能执行。
B.开放端口相关检查相关命令(确保防火墙是打开情况下再检查端口开放情况才是有意义的)
①查看防火墙中开放端口命令— iptables -L
②将某个端口(在此以80为例)开放firewall-cmd –zone=public –add-port=80/tcp –permanent
(14)相关操作Nginx的命令
重启Nginx,一般在修改Nginx配置文件后可使用;命令:nginx -s reload
停止Nginx,命令:nginx -s stop