您当前的位置:网站首页>碎碎语>Nginx安装详细教程

Nginx安装详细教程

2023年02月02日 投稿作者:admin 围观人数:304
Nginx安装详细教程

1. Nginx简单介绍

Nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;Nginx可以作为一个HTTP服务器进行网站的发布处理,另外Nginx可以作为反向代理进行负载均衡的实现。

更多关于Nginx介绍以及作用请自行百度

2.安装Nginx基础依赖包

[root@nginx~]#yuminstallgccgcc-c++pcre-develzlib-developenssl-devel-y

3.下载相关的软件包3.1下载nginx稳定版

注:进入Nginx安装包下载地址复制您想要的版本链接,我这里以Nginx-1.14.0为例。

[root@nginx~]#cd/usr/local/src/[root@nginxsrc]#wgethttp://nginx.org/download/nginx-1.14.0.tar.gz

3.2 下载nginx-sticky模块(可选安装,应用于集群)

作用:后端做负载均衡解决session sticky问题。

[root@nginxsrc]#wgethttps://bitbucket.org/nginx-goodies/nginx-sticky-module-ng/get/master.tar.gz

3.3下载ngx_cache_purge模块(可选安装)

作用:将ngx_cache_purge编译到到Nginx中,用来清除指定URL的缓存。

官网地址:http://labs.frickle.com/nginx_ngx_cache_purge/

[root@nginxsrc]#wgethttp://labs.frickle.com/files/ngx_cache_purge-2.3.tar.gz

Nginx安装详细教程 [db:标签] 碎碎语  第1张

4.添加Nginx用户和组

[root@nginx~]#groupaddwww[root@nginx~]#useradd-gwwwwww-s/sbin/nologin

注:创建nginx运行用户www并加入到www组,不允许www用户直接登录系统。

5.解压Nginx源码包并进入解压目录,进行编译安装

[root@nginxsrc]#tarzxfnginx-1.14.0.tar.gz#注意3.2的可选项[root@nginxsrc]#tarzxfngx_cache_purge-2.3.tar.gz#注意3.3的可选项[root@nginxsrc]#tarzxfnginx-goodies-nginx-sticky-module-ng-08a395c66e42.tar.gz[root@nginxsrc]#cdnginx-1.14.0/

注:‘='号后面是自己安装包的绝对路径,和配置文件路径。

[root@nginx-masternginx-1.14.0]#./configure--prefix=/usr/local/nginx>--user=www--group=www>--with-http_stub_status_module>--with-http_realip_module--with-http_ssl_module>--with-http_gzip_static_module>--http-client-body-temp-path=/var/tmp/nginx/client>--http-proxy-temp-path=/var/tmp/nginx/proxy>--http-fastcgi-temp-path=/var/tmp/nginx/fcgi#注意3.2的可选项>--with-pcre--add-module=/usr/local/src/ngx_cache_purge-2.3#注意3.3的可选项>--add-module=/usr/local/src/nginx-goodies-nginx-sticky-module-ng-08a395c66e42

Nginx安装详细教程 [db:标签] 碎碎语  第2张

执行完编译后:

Nginx安装详细教程 [db:标签] 碎碎语  第3张

[root@nginxnginx-1.14.0]#make&&makeinstall

注:Nginx的所有模块必须在编译的时候添加,不能再运行的时候动态加载。

6.优化Nginx程序的执行路径

[root@nginxnginx-1.14.0]#ln-s/usr/local/nginx/sbin/nginx/usr/local/sbin/[root@nginxnginx-1.14.0]#nginx-t

如果出现以下问题:

Nginx安装详细教程 [db:标签] 碎碎语  第4张

需要创建此目录:

[root@nginxnginx-1.14.0]#mkdir-p/var/tmp/nginx/client

Nginx安装详细教程 [db:标签] 碎碎语  第5张

7.配置Nginx开机自启动等命令,方便我们管理Nginx

原始管理nginx的命令,不是很方便!

[root@nginx-master~]#nginx启动nginx[root@nginx-master~]#nginx-sreload重启nginx[root@nginx-master~]#nginx-sstop停止nginx

接下来设置常用的管理命令:

1) 创建开机启动命令脚本文件:

[root@nginx~]#vim/etc/init.d/nginx

2) 在这个Nginx文件中插入一下启动脚本代码:

-----------------------------------脚本如下-----------------------------------#!/bin/bash#chkconfig:-8515PATH=/usr/local/nginxDESC="nginxdaemon"NAME=nginxDAEMON=$PATH/sbin/$NAMECONFIGFILE=$PATH/conf/$NAME.confPIDFILE=$PATH/logs/$NAME.pidscriptNAME=/etc/init.d/$NAMEset-e[-x"$DAEMON"]||exit0do_start(){$DAEMON-c$CONFIGFILE||echo-n"nginxalreadyrunning"}do_stop(){$DAEMON-sstop||echo-n"nginxnotrunning"}do_reload(){$DAEMON-sreload||echo-n"nginxcan'treload"}case"$1"instart)echo-n"Starting$DESC:$NAME"do_startecho".";;stop)echo-n"Stopping$DESC:$NAME"do_stopecho".";;reload|graceful)echo-n"Reloading$DESCconfiguration..."do_reloadecho".";;restart)echo-n"Restarting$DESC:$NAME"do_stopdo_startecho".";;*)echo"Usage:$scriptNAME{start|stop|reload|restart}">&2exit3;;esacexit0[root@nginx~]#cd/etc/init.d/

3) 设置所有人都有对这个启动脚本nginx文件的执行权限:

[root@nginxinit.d]#chmoda+xnginx

4) 把nginx加入系统服务中:

[root@nginxinit.d]#chkconfig--addnginx

5) 把服务设置为开机启动:

[root@nginxinit.d]#chkconfignginxon

注:reboot重启系统生效!

6) 重启后,就可以执行如下命令进行管理了

systemctlstartnginx.service#启动nginxsystemctlstopnginx.service#结束nginxsystemctlrestartnginx.service#重启nginxsystemctlenablenginx.service#开机启动

8. 如果出现 Nginx 启动不了,请尝试以下方法

1) 如果之前安装过httpd,侧需要先卸载httpd,否则启动失败,除非修改Nginx启动端口。

[root@nginx~]#yumremovehttpd-y

2) 如果还是启动不来,再试试这个方法:杀死Nginx相关的进程之后,启动Nginx

[root@nginx~]#ps-A|grepnginx[root@nginx~]#kill-9pid1[root@nginx~]#kill-9pid2

3) 如果还是不行,查看日志信息解决。

9.启动Nginx并访问测试

Nginx安装详细教程 [db:标签] 碎碎语  第6张

注:后续继续更新Nginx优化及反向代理功能!

总结

以上Nginx安装详细教程就是小编为大家收集整理的全部内容了,希望对大家有所帮助。如果您喜欢这篇文章,可以收藏或分享给您的小伙伴们吧!欢迎持续关注我们的后续更新。

标签

Nginx安装详细教程
版权说明
免责声明:本文文章内容由技术导航发布,但不代表本站的观点和立场,具体内容可自行甄别.