linux中配置nginx静态资源路径下载文件,前端资源路径,后端代理及nginx的相关操作
下面是我的nginx配置,看注释,根据自己的项目情况来进行配置。nginx安装目录 -c nginx配置文件目录。
·
nginx静态资源路径下载文件,前端资源路径,后端代理
下面是我的nginx配置,看注释,根据自己的项目情况来进行配置
worker_processes 1; # 工作进程数,通常设置为 CPU 核心数
events {
worker_connections 1024; # 每个工作进程允许的最大连接数
}
http {
include mime.types; # 包含 MIME 类型配置文件
default_type application/octet-stream; # 默认的 MIME 类型
sendfile on; # 开启 sendfile 功能,提高文件传输效率
keepalive_timeout 65; # 客户端与服务器之间的空闲超时时间
# 第一个 server 块的配置
server {
listen 8101; # 监听端口号
server_name localhost; # 服务器名称
charset utf-8; # 字符编码
#前端静态资源文件配置
location / {
root /mnt/zhifei/dist; # 前端解压后的文件存放的根目录
try_files $uri $uri/ /index.html; #在请求的文件或目录不存在时,重定向到指定的文件
index index.html index.htm; # 默认的索引文件
}
#后端配置 /api/ 开头的URL反向代理到http://localhost:9898/
location /api/ {
proxy_set_header Host $http_host; # 设置代理请求的 Host 头
proxy_set_header X-Real-IP $remote_addr; # 设置代理请求的真实 IP 头
proxy_set_header REMOTE-HOST $remote_addr; # 设置代理请求的远程主机头
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 设置代理请求的转发头
proxy_pass http://localhost:9898/; # 代理到的后端服务器地址
}
#可下载的静态资源路径配置
#文件需要放在/mnt/zhifei/static/下面 访问地址为http://你的ip:监听的端口/static/文件名称
location /static/ {
alias /mnt/zhifei/static/; # 静态文件目录的别名
}
server {
listen 8882;
server_name localhost;
location / {
root /zhifei/platform/dist;
try_files $uri $uri/ /index.html;
index index.html index.htm;
}
}
server {
listen 9088;
server_name localhost;
charset utf-8;
location / {
root /zhifei/platform/html/dist;
try_files $uri $uri/ /index.html;
index index.html index.htm;
}
location /prod-api/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8085/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://127.0.0.1:9990;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header REMOTE-HOST $remote_addr;
}
}
server {
listen 443 ssl;
server_name dy.sichuan-zhifei.com;
root html;
index index.html index.htm;
ssl_certificate cret/dy.pem;
ssl_certificate_key cret/dy.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://127.0.0.1:9990;
}
}
linux中nginx的相关操作
1.全局配置后启动nginx
sudo systemctl restart nginx
2.全局配置后关闭nginx
sudo systemctl stop nginx
如果不想全局配置,可以使用下面的命令
3.查看nginx运行状态
systemctl status nginx
4.杀死所有nginx进程
sudo killall nginx
5.启动nginx
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
nginx安装目录 -c nginx配置文件目录
linux中从服务器代理到本地及设置外网访问地址
#当服务器设置了外网访问端口时,前端设置后端访问地址改为域名+端口(http://inner-v.zhifei-group.com:9002/),这样就会代理到该配置
server {
listen 9002;
listen [::]:9002;
#线上服务器名称要改成域名
server_name inner-v.zhifei-group.com;
#access_log /var/log/nginx/host.access.log main;
location / {
#http://192.168.1.146:3000/就是代理到本地的地址
proxy_pass http://192.168.1.146:3000/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
#下面是代理到服务器的对应前端路径
#root /usr/share/nginx/html/dist/;
#index index.html index.htm;
}
#当要调用两个不同的服务是,设置不一样的前缀,代理到不同的服务
location /api/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.1.63:9003/api/;
}
#当要调用两个不同的服务是,设置不一样的前缀,代理到不同的服务
location /ardb/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.1.63:5050/ardb/;
}
}
更多推荐
已为社区贡献1条内容
所有评论(0)