nginx rewrite 出现 403 forbidden
各位好
小弟有几台服务器,其中一台有公网IP(gateway)和另外几台内网机器,内网在同一网段。其中一台内网机器安装php运行phpMyAdmin,并且使用nginx作为web服务,配置为
server {
listen 80;
root /home/xxx/www; #phpMyAdmin放在这个目录下
index index.html index.htm index.php;
server_name 10.xxx.xxx.xxx www.xxx.com;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
网关服务器上的nginx配置为
server {
listen 80;
server_name www.xxx.com;
location / {
index index.php index.html;
rewrite /(.*) /$1 break;
proxy_pass http://10.xxx.xxx.xxx/phpMyAdmin/;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
#location / {
# index index.php index.html;
# proxy_pass http://10.xxx.xxx.xxx/phpMyAdmin/;
#}
}
现在如果直接访问http://www.xxx.com,则报403 forbidden。
但如果直接把外网IP绑定到php那台内网机器再访问http://www.xxx.com/phpMyAdmin...
请问各位大神,从网关rewrite到内网机器的配置是哪里有问题吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论