编程笔记

lifelong learning & practice makes perfect

1panel|配置nginx代理

配置nginx代理

1panel入口需要使命令获取

1
1panel user-info

nginx配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
server {
# SSL 默认访问端口号为 443
listen 443 ssl http2;
listen [::]:443 ssl http2;
# 请填写绑定证书的域名
server_name 1panel.cloud.com;

# 请填写证书文件的相对路径或绝对路径
ssl_certificate /etc/nginx/ssl/fullchain.pem;
# 请填写私钥文件的相对路径或绝对路径
ssl_certificate_key /etc/nginx/ssl/privkey.pem;

ssl_session_timeout 5m;
# 请按照以下协议配置
ssl_protocols TLSv1.2 TLSv1.3;
# 请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256';
ssl_prefer_server_ciphers on;

location / {
# http版本
proxy_http_version 1.1;
# 禁用缓冲,直传
proxy_buffering off;
# 代理请求不用缓冲
proxy_request_buffering off;
# 客户端的真实IP地址放在X-Real-IP头里
proxy_set_header X-Real-IP $remote_addr;
# 经过的所有代理IP地址都放在X-Forwarded-For头里
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# 如果客户端请求升级协议(比如WebSocket),就把这个请求头传给后端服务器。
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
# 注意这里要填写1panel实际端口号,不要加上入口的那一串安全码,进入时用域名+安全码(如 https://1panel.cloud.com/123123bcd)
proxy_pass http://localhost:9999;
}
}

server {
listen 80;
# 请填写绑定证书的域名
server_name 1panel.cloud.com;

# 把 HTTP 的域名请求转成 HTTPS
location / {
return 301 https://$host$request_uri;
}
}

欢迎关注我的其它发布渠道