博主在前天帮@小石 用本博客的渣服务器反代加速他的个人简介时,发现了配置文件一些地方是比较容易出错的,但是网上的教程大多没有讲出来 正所谓的互相爬虫 :eek: ,特此开一篇文章与大家分享下 :mrgreen:
反代http配置
server{
listen 80; #监听的端口号
server_name blog.cannon.org.cn;#主机名,根据自己的需要修改
location / {
proxy_pass http://xs314.gitee.io/;#反代的网站,http不要写出https
}
}
http的反代配置没有什么地方是容易出错的,这里就不多说了
反代https配置
server { listen 443; #https监听的端口号 server_name blog.cannon.org.cn;#主机名,根据自己需要修改 ssl on;#开启https的开关 ssl_certificate /usr/local/nginx/conf/ssl/blo.cannon.org.cn.crt; #https证书路径 ssl_certificate_key /usr/local/nginx/conf/ssl/blo.cannon.org.cn.key; #https密钥路径 ssl_session_timeout 5m;#https握手超时时间 ssl_protocols TLSv1 TLSv1.1 TLSv1.2;#启用的TLS版本 ssl_ciphers ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256:AES128-SHA:AES256-SHA:RC4-SHA:DES-CBC3-SHA:RC4-MD5; #启用的ssl加密套件 ssl_prefer_server_ciphers on; proxy_http_version 1.1; fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host "xs314.gitee.io"; #向源站返回的SNI,修改为你要反代的网站的域名 proxy_set_header X-Protocol https; proxy_http_version 1.1; #向源站请求资源时使用的http版本 proxy_buffering off; #缓存开关 proxy_ssl_server_name on; #反代时向源站返回SNI名称 proxy_pass https://180.97.125.228:443; #源站地址,必须写https } }
好了,到了https配置这一步,“proxy_pass”、“proxy_ssl_server_name”和“proxy_set_header”这三项配置非常容易出错,或者没加上去,只要少了其中一项,你访问你的反代服务器,都会返回502。 :eek:
特别是“proxy_pass”这一项,只能写IP地址,不能写域名,就算你用upsteam{}在前面声明了这个域名的地址、能正常启动,访问服务器得到的也只是502;你写完IP地址后,端口号是可选的,可加可不加 :mrgreen:
The End
Comments | NOTHING