nginx - 遇到 nginx 反向代理的奇怪问题 - 需要帮助
问题描述
我陷入了这个奇怪的问题。我在 Apache Web 服务器前面设置了 nginx 作为我的反向代理,有些我的 proxy_pass 没有按预期工作,并且在检索页面时出现 404 not found 错误。有人可以帮忙吗?
Reve Proxy IP - 10.122.0.4
Apache 10.122.0.3
在我的 Rev Proxy /etc/hosts 文件 10.122.0.3 ipbl.xxxx.xxx
这是我的 nginx 节
server {
listen 80;
server_name threat.list.xxx.xxx;
# return 301 https://$server_name$request_uri;
add_header X-Frame-Options "SAMEORIGIN";
modsecurity on;
modsecurity_rules_file /etc/nginx/modsec/main.conf;
error_page 404 403 /custom_404.html;
location = /custom_404.html {
root /usr/share/nginx/html;
internal;
}
access_log /var/log/nginx/threatlist/access.log;
error_log /var/log/nginx/threatlist/error.log;
location / {
if ($request_method !~ "GET") {
return 403;
break;
}
include /etc/nginx/threatlistacl/ipacls;
deny all;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 128k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
proxy_temp_file_write_size 256k;
proxy_connect_timeout 30s;
proxy_pass http://ipbl.xxxx.xxxx;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
现在,如果我访问 ipbl.xxx.xxx/ipbl.txt 页面,它将成功访问
Request URL: http://threat.list.xxx.xxx/ipbl.txt
Request Method: GET
Status Code: 404 Not Found
Remote Address: xxx.xx.xx.xx:80
Referrer Policy: strict-origin-when-cross-origin
Connection: keep-alive
Content-Type: text/html; charset=iso-8859-1
Date: Sat, 13 Mar 2021 04:50:53 GMT
Server: nginx
Transfer-Encoding: chunked
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: en-GB,en;q=0.9
Connection: keep-alive
DNT: 1
Host: threat.list.xxx.xxx
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36
还有我的 access.log
xx.xx.xx.xx - - [13/Mar/2021:10:31:17 +0530] "GET /ipbl.txt HTTP/1.1" 404 183 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36"
解决方案
我在 apache2.conf 中发布了我的虚拟主机配置,并以某种方式从启用了站点的站点中删除了我的 ipbl.conf 文件。另外,我在 /etc/hosts 中添加了条目 [不确定是否需要匹配 ServerName]
推荐阅读
- javascript - 错误:useParams() 钩子引发错误:TypeError: useContext(...) is undefined
- json - 附加到 vbscript 中的 json 列表
- json - 谷歌数据工作室 REGEX_EXTRACT json
- reactjs - 如何通过使用 react 和 react 钩子每秒添加新行来每秒在我的反应表上显示数据?
- node.js - 在问题(?)标记和点(。)上拆分一个句子并计算总字数?节点js
- rust - tracking-appender crate 将颜色伪影附加到日志
- excel-formula - 计数摘要不同值 Excel
- django - REST API 中的循环引用
- c# - 根据文档,EF Core 5 多对多关系无法正常工作
- python - 像googletest一样制作pytest输出?