nginx学习

一、nginx常用版本

Nginx开源版:
http://nginx.org/
nginx plus商业版本(好像功能支持更多)
https://www.nginx.com/
openresty (免费,用的也是这个)
https://openresty.org/cn/
Tengine
https://tengine.taobao.org/
最后学习openresty,并且公司用的也是这个openresty。

二、安装nginx(openresty)

注意:我的linux发行版本是
CentOS Linux release 7.6.1810 (Core)

1、安装依赖

OpenResty依赖库有:perl 5.6.1+, libreadline, libpcre, libssl。不然你会在 运行 ./configure 就会编译错误

#在CentOS上安装如下
yum -y install readline-devel pcre-devel openssl-devel gcc perl curl

2、下载源码

1、随便找个目录将openresty-1.11.2.5.tar.gz 压缩包下载下来。
2、然后使用tar解压缩
3、进入到 openresty-1.11.2.5 中 开始进行编译安装 openresty

wget https://openresty.org/download/openresty-1.11.2.5.tar.gz
tar zxvf openresty-1.11.2.5.tar.gz
cd openresty-1.11.2.5

3、编译安装

configure配置脚本 它需要一些依赖就是上面那些,不然你尝试运行就会报错
–prefix 安装在哪个目录下 一般都会装在/usr/local/openresty
1、注意我安装的是openresty,如果安装nginx的话 貌似下载的依赖不一样。
2、./configure 开始编译
3、参数解释
–prefix=/usr/local/openresty:指定OpenResty的安装目录为/usr/local/openresty。
–with-luajit:启用LuaJIT,这是一个高性能的Lua解释器,可以提高OpenResty的性能。
–without-http_redis2_module:禁用Redis2模块,这个模块用于与Redis数据库进行交互。
–with-http_iconv_module:启用iconv模块,这个模块用于字符集转换。
gmake:这个命令是用来编译OpenResty的源代码,将源代码编译成可执行文件。
gmake install:这个命令是用来安装OpenResty,将编译好的可执行文件和相关的库文件复制到指定的安装目录中。

./configure --prefix=/usr/local/openresty --with-luajit --without-http_redis2_module --with-http_iconv_module
gmake
gmake install

4、启动nginx服务

1、手动启动方式

首先安装完成后,没有系统服务去管理或者脚本,只有自己手动去启动。
/usr/local/openresty/nginx/sbin/nginx
验证下是否启动成功。通过curl cip.cc查询外网ip。然后访问浏览器这个ip地址。如果服务启动,访问没反应,应该是防火墙问题,关掉防火墙即可,我直接用的公司服务器,没遇到过这问题。
关闭防火墙systemctl stop firewalld.service
到这就完成了,访问ip有响应代表成功。

#启动nginx
./nginx
#快速停止
./nginx -s stop
#优雅的关闭,在退出前完成已经接受的链接请求
./nginx -s quit
#重新加载配置
./nginx -s reload 

2、安装成系统服务

接下来加入到 systemctl 中 用来管理服务
1、创建一个新的systemd服务文件nginx.service:
vim /usr/lib/systemd/system/nginx.service
2、内容如下

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/usr/local/openresty/nginx/logs/nginx.pid
ExecStartPre=/usr/local/openresty/nginx/sbin/nginx -t -c /usr/local/openresty/nginx/conf/nginx.conf
ExecStart=/usr/local/openresty/nginx/sbin/nginx -c /usr/local/openresty/nginx/conf/nginx.conf
ExecReload=/usr/local/openresty/nginx/sbin/nginx -s reload
ExecStop=/usr/local/openresty/nginx/sbin/nginx -s stop
PrivateTmp=true

[Install]
WantedBy=multi-user.target

3、保存并关闭nginx.service文件。
4、
#启用Nginx服务:
systemctl enable /usr/lib/systemd/system/nginx.service
#启动Nginx服务:
systemctl start nginx.service
此时就可以用 systemctl 来启用和关闭nginx了。

你可能感兴趣的:(nginx,nginx,学习,运维)