我使用的是nginx作为负载均衡器,但是有一个让我感到困惑的问题。 我的nginx.conf:
upstream backend {
ip_hash;
server 172.16.117.200:8080 weight=1;
server 172.16.117.201:8080 weight=4;
}
server {
location / {
listen 80;
index index.php index.html index.htm;
proxy_pass http://backend;
}
}
server {
listen 8080;
server_name localhost;
root /var/www;
location /aa {
if ($request_uri ~* ^.*/.*$) {
rewrite ^/(mp)/(.*)$ /$1/index.php?q=$2 last;
break;
}
}
}
当我在浏览器中输入172.16.1.200/aa/
时,一切正常,但如果我在浏览器中输入172.16.117.200/aa
(不带斜线),则地址将重定向到http://172.16.117.200:8080/aa/
有什么问题?
答案 0 :(得分:-1)
如果文件不是0644不正确或文件未找到将重定向与真实端口确保它找到和神0644有时它不是自动索引或你没有设置索引在nginx.conf使重定向到index.php尝试使用172.16。 1.200 / AA / index.php的
进入blancer
upstream backend {
ip_hash;
server 172.16.117.200:8080 weight=1;
server 172.16.117.201:8080 weight=4;
}
server {
server_name localhost;
location / {
listen 80;
index index.php index.html index.htm;
proxy_pass http://backend;
}
}
进入172.16.117.200 nginx.conf
server {
server_name 172.16.117.200;
rewrite ^/(mp)/(.*)$ /$1/index.php?q=$2 last;
location / {
listen *:8080;
index index.php index.html index.htm;
root /aa;
}
}