#一次安装4个插件
yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel
#一次安装如果有问题,可以试一下分开安装
yum install -y gcc-c++
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel
使用wget
命令下载远程文件 如果没有安装wget
先执行 yum install wget
安装wget
wget -c .20.
tar -zxvf nginx-1.20.
cd nginx-1.20.2
./configure
ssl
模块 当然模块可以在安装后再继续添加# 这里推荐大家不执行 下文我将带大家进行后期的安装
./configure --with-http_ssl_module
make
configure arguments
: 后带的就是我们将安装的模块 如果前面是默认安装 则configure arguments
: 后不携带任何模块objs/nginx -V
make install
安装路径
我这里是/usr/local/nginx
whereis nginx
安装路径
下的/sbin/
文件夹cd /usr/local/nginx/sbin/
执行对应目录即可操作Nginx
如果执行时提示错误:nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory)
原因f的nginx.pid被注释了
解决:进入/usr/local/nginx/conf/找到f文件找到pid logs/nginx.pid
解除注释
切记:但凡修改了
# 启动Nginx
./nginx
# 停止Nginx
./nginx -s stop
# 重启Nginx
./nginx -s reload
开启防火墙80、443端口 也就是http与https
sudo firewall-cmd --reload
命令的意思是立即生效
如果服务器在 阿里云、腾讯云 等云平台则需要到安全组开放端口
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
访问服务器IP地址的80端口(默认80端口) 如果正常显示Welcome to Nginx!页面则表示Nginx配置成功
配置自己的项目页面(修改Nginx安装目录下/f
配置文件)其余的配置项大家可百度悉知
server {listen 80; # 端口server_name localhost;location / {root /usr/web/ming_home; # 页面目录(如果前端页面不在/usr/下可能导致权限不足无法访问)index index.html index.htm; # 索引文件}}
cd /etc/systemd/system
vim nginx.service
/usr/local/nginx
如果你的不是则在写如下配置时要记得更改[Unit]
Description=nginx-The High-performance HTTP Server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/f
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/f
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
ExecQuit=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
到这里systemd就已经配置完成 可以使用如下命令操作Nginx
查看 Nginx 状态
systemctl status nginx
重启 Nginx
systemctl restart nginx
启动 Nginx
systemctl start nginx
停止 Nginx
systemctl stop nginx
启用开机启动 Nginx
systemctl enable nginx
禁用开机启动 Nginx
systemctl disable nginx
如果我们没有安装SSL模块 在配置Https时 会提示错误:
nginx: [emerg] the “ssl” parameter requires ngx_http_ssl_module in /usr/local/nginx/f:37
我们先切换到源码包目录(也就是刚刚wget
下载并解压的目录,如果你删除了改目录 可以重新下载一个对应版本)
我的源码目录是/usr/app/nginx-1.20.2/
cd /usr/app/nginx-1.20.2
查看Nginx当前已安装的模块
/usr/local/nginx/sbin/nginx -V
configure arguments:
后输出的就是现有已安装的模块 我们要将后面输出的内容复制下来 和SSL模块一并安装 否则就丢失了
因为我这里没有安装任何模块 所以configure arguments:
后面输出就是空的
因此我们只需要加上自己想要的SSL 模块名称--with-http_ssl_module
然后回车执行
./configure --prefix=/usr/local/nginx --with-http_ssl_module
执行完上面的命令后我们接着执行编译命令
注意:这里切记千万不要执行make install
否则就把原来安装的Nginx所有文件都覆盖掉了
make
关闭Nginx
systemctl stop nginx
然后用源码包中刚刚编译好的的Nginx把安装目录中的Nginx替换掉
cp ./objs/nginx /usr/local/nginx/sbin/
y
回车即可然后查看安装目录下的Nginx是否已安装我们需要的模块
/usr/local/nginx/sbin/nginx -V
xxxxx.key
文件ssl_certificate
和ssl_certificate
配置项server {listen 344;server_name localhost;ssl_certificate /usr/local/nginx/ ;ssl_certificate_key /usr/local/nginx/ xxxxx.Key;location / {root /usr/web/ming_home;index index.html index.htm;}}
server {listen 80 default backlog=2048;listen 443 ssl;server_name localhost;root /usr/web/ming_home;ssl_certificate /usr/local/nginx/ ;ssl_certificate_key /usr/local/nginx/ xxxxx.Key;location / {root /usr/web/ming_home;index index.html index.htm;}}
好啦 本次小教程到这里就结束啦 第一次发帖 可能有很多不足的地方欢迎指出
本文发布于:2024-01-30 02:30:41,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170655304518603.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |