好的,这个任务应该很简单,但我无法让它工作。我想在我的域名之后(实际上是在该域名的 IP 之后)有一个子文件夹,它重定向到同一服务器上的特定端口。本质上,我想摆脱必须使用许多端口的情况。
这是我的 nginx 配置
server {
listen 80;
index index.html index.htm index.nginx-debian.html index.php;
server_name aaa.bbb.ccc.ddd;
location ^~ /app2 {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
proxy_pass http://aaa.bbb.ccc.ddd:8001;
}
}
Run Code Online (Sandbox Code Playgroud)
因此,在访问 aaa.bbb.ccc.ddd/app2 时,我希望将其解析为http://aaa.bbb.ccc.ddd:8001。
这可能会很复杂。我在这里缺少什么?
谢谢帕特
我正在尝试将 nginx 配置为 LAN 上多个服务器的反向代理。他们应该在我的 WAN 上使用不同的子域。我的配置是这样的:
@ReverseProxy:/etc/nginx/sites-enabled$ cat reverseproxy
server {
server_name DOMAIN.eu;
# app1 reverse proxy follow
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://10.0.2.5:80;
}
server {
server_name Subdomain.domain.eu;
# app2 reverse proxy settings follow
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://10.0.2.33:80;
}
Run Code Online (Sandbox Code Playgroud)
但是我收到此错误并且无法再进一步....
@ReverseProxy:/etc/nginx/sites-enabled$ nginx -t
nginx: [alert] could not open error log file: open() "/var/log/nginx/error.log" failed (13: Permission denied)
2009/01/04 12:22:13 [warn] 1302#0: the "user" directive makes sense …Run Code Online (Sandbox Code Playgroud) 我需要配置 nginx 服务器,如果 URL 在 URL 中的任何位置包含两点(..),他就会显示 403 页。例如,如果 URL 是“site.sit/index.php?log=../conf.php - web-server 应该检测到尝试去上面的目录并引入 403-messege。我尝试在 conf 中配置这个想法-file nginx 那里:
location \.\. {
deny all;
}
Run Code Online (Sandbox Code Playgroud)
但这行不通。
告诉我,我如何实施这个计划?