centos7安装配置nginx

embedded/2024/10/18 19:11:56/

先安装依赖

安装依赖之前最好先执行下update

yum update

yum install gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel -y
cd /usr/local/nginx

wget http://nginx.org/download/nginx-1.18.0.tar.gz

tar -zxvf nginx-1.18.0.tar.gz

cd /usr/local/nginx/nginx-1.18.0

执行三个命令:

./configure
make
make install

/usr/local/nginx/sbin/nginx -V如果报错没有nginx命令说明没有配置nginx的环境变量

打开/etc/profile

vi /etc/profile
 

在最后一行 追加下面配置(ESC :wq 保存退出)

export PATH=$PATH:/usr/local/nginx/sbin

执行source /etc/profile使配置生效,就可以用nginx命令了

配置开机自启动

vi /lib/systemd/system/nginx.service

复制以下内容保存(按ESC后:wq保存退出)

[Unit]
Description=nginx service
After=network.target[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true[Install]
WantedBy=multi-user.target

设置开机自启动

systemctl enable nginx

启动、查看状态、重启nginx,指令3件套

systemctl start nginx
systemctl status nginx
systemctl restart nginx

阿里云SSL证书配置

把阿里云申请的证书放到目录 /data/cert 或者/usr/local/nginx/conf/cert (路径自己指定)
注意:服务器安全组要开启80/443端口

vi /usr/local/nginx/conf/nginx.conf

增加配置,把下面的www.yuming.com改成自己的域名

    server {listen       80;server_name  www.yuming.com;return       301 https://$server_name$request_uri;}server {listen       443 ssl;   # nginx1.15之后用这个语法,老的语法是ssl on;server_name  wwww.yuming.com;ssl_certificate   /data/cert/www.yuming.com.pem;ssl_certificate_key  /data/cert/www.yuming.com.key;ssl_session_timeout 5m;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;ssl_prefer_server_ciphers on;location / {client_max_body_size 12m;  # 设置请求头大小proxy_set_header Host $http_host;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Real-Ip $remote_addr;proxy_set_header X-NginX-Proxy true;proxy_pass http://localhost:8001;proxy_redirect off;}}

 

腾讯云SSL证书配置

基本和阿里云差不多,在ssl_ciphers处有差异
注意:服务器安全组要开启80/443端口,申请证书的二级域名要和绑定的域名一致,如下例:service,否则会有不安全的警告

    server {listen       80;server_name  service.yuming.com;return       301 https://$server_name$request_uri;}server {listen       443 ssl;  # nginx1.15之后用这个语法,老的语法是ssl on;server_name  service.yuming.com;ssl_certificate   /data/cert/1_service.yuming.com_bundle.crt;ssl_certificate_key  /data/cert/2_service.yuming.com.key;ssl_session_timeout 5m;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;        ssl_prefer_server_ciphers on;location / {client_max_body_size 12m;  # 设置请求头大小proxy_set_header Host $http_host;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Real-Ip $remote_addr;proxy_set_header X-NginX-Proxy true;proxy_pass http://localhost:8081;proxy_redirect off;}}

nginx其他配置">Nginx其他配置

1、配置静态文件访问,autoindex on可以设置为开启索引,可自行设置

    server {listen       80;server_name  pic.yuming.com;charset    utf-8;location / {# 配置静态目录root /data/upimgs;autoindex off;              # on显示资源目录,off不显示autoindex_exact_size off;   # on以bytes显示大小,off以KB、MB、GB显示文件大小autoindex_format html;      # 以html的方式进行格式化,可选参数有 html | json | xmlautoindex_localtime off;    # 显示的⽂件时间为⽂件的服务器时间。默认为off,显示的⽂件时间为GMT时间}}

2、nginx限制ip访问 + 反向代理

    server {listen       80;                    #监听端口server_name  api.yuming.com;    #域名#自定义变量set $serverip $server_addr; # 服务器地址放在变量里,避免重复取#allow 61.18.22.155;        # 限制固定ip访问#allow 61.18.22.0/24;       # 0/24意思是ip的前3段一致,值范围[8,16,24]#deny all;                  # 拒绝所有的location / {root /data/website/goapp/dist;    # 配置静态目录index index.html;                 # 配置默认首页try_files $uri $uri/ /index.html; # 解决刷新问题}location /api {client_max_body_size 12m;                     #此处修改上传文件大小限制proxy_pass http://127.0.0.1:8083;             #反向代理地址+端口proxy_set_header Host $http_host;             #设置Hostproxy_set_header X-Real-Ip $remote_addr;      #设置客户端远程地址proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Server-Ip $serverip;       #设置服务器内网地址proxy_set_header X-NginX-Proxy true;		# 下面暂时没啥用set_real_ip_from 0.0.0.0/0;		            #从哪个信任前代理处获得真实用户ipreal_ip_header  X-Forwarded-For;   		    #接收到报文的哪个http首部去获取前代理传送的用户ipreal_ip_recursive   on;             		  #是否递归地排除直至得到用户ip(默认为off)}}

nginx加websocket配置

      location /ws {proxy_http_version 1.1;proxy_pass http://localhost:8009;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";          }

 


http://www.ppmy.cn/embedded/123679.html

相关文章

[ComfyUI]Flux:超美3D微观山水禅意,经典中文元素AI重现,佛陀楼阁山水画卷

在数字艺术和创意领域,[ComfyUI]Flux以其独特的虚实结合技术,已经成为艺术家和设计师们手中的利器。今天,我们激动地宣布,[ComfyUI]Flux带来了一款超美的3D微观山水禅意作品,经典中文元素通过AI技术重现,包…

el-table动态表头

需求&#xff1a;初始化数据表头固定&#xff0c;通过查询或者页面携带参数查询&#xff0c;将后端返回的新字段加到原有表头上回显 <el-tableref"table":data"tableData":header-cell-style"{ background: #F5F7FA, height: 30px }"style&qu…

算法入门(C#):输入日期得到下一天的日期

#include<stdio.h> int main() { int n, y, r;//n:年, y:月, r:日 scanf("%d%d%d", &n, &y, &r); if (n > 0 && y > 0 && y < 13 && r>0) {//检查输入的日期是否合法 // 处理2月的情…

Streamlit 实现登录注册验证

在开发基于 Streamlit 的应用时&#xff0c;用户认证功能是一个常见需求。本文将介绍如何通过两种方式来实现登录注册功能&#xff1a;手动实现 和 使用 Streamlit-Authenticator 库。手动实现虽然灵活&#xff0c;但需要自行处理密码加密、验证等细节&#xff1b;而 Streamlit…

iTextPDF中,要实现表格中的内容在数据长度超过边框时自动换行

在iTextPDF中&#xff0c;要实现表格中的内容在数据长度超过边框时自动换行&#xff0c;你可以使用Phrase对象并设置其HyphenationEvent&#xff0c;或者使用Chunk对象并设置其setSplitCharacter方法。以下是一些方法来实现这一功能&#xff1a; 1. 使用Phrase对象&#xff1a…

贴吧软件怎么切换ip

在网络使用中&#xff0c;有时我们需要切换IP地址来满足特定的需求&#xff0c;比如需要切换贴吧软件IP以进行不同的操作。本文将介绍几种贴吧切换IP地址的方法&#xff0c;帮助用户更好地管理自己的网络身份和访问权限。 1、更换网络环境‌ 通过连接到不同的Wi-Fi网络或使用移…

数据结构(7.4_1)——B树

B树的定义 m阶B树的核心特性&#xff1a; B树的高度 最小高度 最大高度 总结&#xff1a;

高点摄像山火烟雾检测数据集 共2890张图像,分辨率1920×1080,标注采用json格式,标注了每个烟雾的位置,烟雾浓度等级(低,中,高),共1.1GB

高点摄像山火烟雾检测数据集&#xff08;并按照低、中详细标注烟雾浓度&#xff09;。主要针对初期山火&#xff0c;任何野火检测系统的最重要目标是在火势扩大之前及时检测到火灾。在初期阶段&#xff0c;野火由非火焰性的燃烧烟雾组成&#xff0c;热量相对较低。在这个阶段识…