【发布时间】:2013-03-07 13:29:55
【问题描述】:
这看起来很荒谬,但我在一个多小时的搜索中没有找到有效的答案。
我有一个运行 nginx 的静态网站(恰好在 Varnish 后面)。索引文件称为index.html。我想将实际访问 URL mydomain.com/index.html 的任何人重定向回 mydomain.com。
这是我的网站 nginx 配置:
server {
listen 8080;
server_name www.mydomain.com;
port_in_redirect off;
location / {
root /usr/share/nginx/www.mydomain.com/public;
index index.html;
}
rewrite /index.html http://www.mydomain.com/ permanent;
}
http://www.mydomain.com/index.html 按预期响应301,位置为http://www.mydomain.com/,但不幸的是http://www.mydomain.com/ 也提供301 返回自身,因此我们得到一个重定向循环。
如果 index.html 确实在请求中,我如何告诉 nginx 只提供 301 服务?
【问题讨论】:
标签: redirect nginx http-status-code-301