Linux安装nginx

Nginx中文文档: https://www.nginx.cn/doc/index.html

环境搭建

1、安装gcc

安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:

yum install gcc-c++

2、PCRE pcre-devel 安装

PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。命令:

yum install -y pcre pcre-devel

3、zlib 安装

zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。

yum install -y zlib zlib-devel

4、OpenSSL 安装

OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。

yum install -y openssl openssl-devel

Nginx安装

1、下载安装包

手动下载.tar.gz安装包,地址:https://nginx.org/en/download.html
下载完毕上传到服务器上

2、解压

tar -zxvf nginx-1.18.0.tar.gz

3、配置

进入到nginx目录下

cd nginx-1.18.0

使用默认配置,在nginx根目录下执行

1、./configure # 默认配置,如需SSL等配置参考下面配置
2、make
3、make install

其他配置在默认配置后追加,多个配置中间用空格分隔,列举部分常用配置,其他配置参阅顶部中文手册

--prefix=/usr/local/nginx  #nginx安装路径
--with-http_stub_status_module  #这个模块能够获取Nginx自上次启动以来的工作状态
--with-http_ssl_module  #此模块启用支持HTTPS
--with-stream  #启用stream模块,这个模块提供一个简单方法来实现在轮询和客户端IP之间的后端服务器负荷平衡。
--with-stream_ssl_module  #stream模块支持HTTPS

4、配置文件修改

安装目录下conf文件夹下

1、cd /usr/local/nginx/conf/
2、vi nginx.conf

启动Nginx

查找nginx安装目录

whereis nginx

进入nginx安装目录

1、cd /usr/local/nginx/sbin/ #进入安装目录下sbin目录
2、./nginx -t #测试配置文件
3、./nginx -s reload #重新加载配置文件
			如果报:nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory)
			因为/usr/local/nginx/logs/nginx.pid这个文件不存在
			解决:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf,使用nginx -c的参数指定nginx.conf文件的位置,然后进入log目录,发现有了nginx.pid文件,再执行./nginx -s reload

nginx常用命令

./nginx  #启动
./nginx -t  #测试配置文件
./nginx -s stop  #停止
./nginx -s quit  #安全退出
./nginx -s reload  #重新加载配置文件

查看nginx端口,以下任一命令都可以

ps -ef | grep nginx  #查看nginx进程
ps aux|grep nginx  #查看nginx进程
lsof -i:80  #查看80端口号进程 80是nginx默认端口,根据配置修改
netstat -tunplp | grep 80

启动成功访问 服务器ip:80
注意:如何连接不上,检查阿里云安全组是否开放端口,或者服务器防火墙是否开放端口!
详细错误查看日志,日志位置默认在安装目录下logs文件夹下

1、cd /user/local/nginx/logs/
2、tail -f error.log

已安装nginx添加模块

查看已安装模块

/usr/local/nginx/sbin/nginx -V

重新配置nginx,例如安装时只添加stream模块,未添加stream-ssl模块

./configure --prefix=/usr/local/nginx --with-stream --with-stream_ssl_module #在原来配置上加上--with-stream_ssl_module

重新编译,进入到nginx根目录

1、cd usr/local/nginx-1.18.0/
2、make

此处一定要切记:不要使用make install,否则会覆盖掉你现在正在使用的nginx,建议先备份conf文件夹下的配置文件
重新替换执行文件

1、cp  /usr/local/nginx/sbin/nginx  /usr/local/nginx/sbin/nginx-bak #备份
2、cp /usr/local/nginx-1.18.0/objs/nginx /usr/local/nginx/sbin/nginx

重启nginx

1、cd /usr/local/nginx/sbin/
2、./nginx -s reload

参考文章:https://www.cnblogs.com/A-Nan-q/p/15041065.html#:~:text=linux%E4%B8%8B%E5%AE%89%E8%A3%85Nginx%20%28nginx%E5%85%B3%E9%94%AE%E5%AD%97%EF%BC%9A%E5%8F%8D%E5%90%91%E4%BB%A3%E7%90%86%EF%BC%8C%E8%B4%9F%E8%BD%BD%E5%9D%87%E8%A1%A1%29%201%E3%80%81%E5%AE%89%E8%A3%85gcc%20%E5%AE%89%E8%A3%85%20nginx%20%E9%9C%80%E8%A6%81%E5%85%88%E5%B0%86%E5%AE%98%E7%BD%91%E4%B8%8B%E8%BD%BD%E7%9A%84%E6%BA%90%E7%A0%81%E8%BF%9B%E8%A1%8C%E7%BC%96%E8%AF%91%EF%BC%8C%E7%BC%96%E8%AF%91%E4%BE%9D%E8%B5%96%20gcc%20%E7%8E%AF%E5%A2%83%EF%BC%8C%E5%A6%82%E6%9E%9C%E6%B2%A1%E6%9C%89,gcc%20%E7%8E%AF%E5%A2%83%EF%BC%8C%E5%88%99%E9%9C%80%E8%A6%81%E5%AE%89%E8%A3%85%EF%BC%9A%20yum%20install%20gcc-c%2B%2B%202%E3%80%81PCRE%20pcre-devel%20%E5%AE%89%E8%A3%85

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值