【问题标题】:Nginx rewrite without 301 codeNginx 重写没有 301 代码
【发布时间】:2013-04-27 05:50:18
【问题描述】:

我想将所有到我网站的查询重定向到 https 协议。 我的配置是:

    server {
    listen  80;
    server_name addons.vkzvuk.ru;
    server_name www.vkzvuk.ru;
    server_name vkzvuk.ru;
    rewrite ^ https://vkzvuk.ru$request_uri? permanent; }

当我发出 curl 请求时 curl vkzvuk.ru 它返回 html:

<h1>301 Moved Permanently</h1>

所以,很多互联网服务无法向我展示例如 google pr。

另一方面,“卷曲” twitter 和 facebook 返回空结果。如何调整 nginx 以获得相同的行为?

【问题讨论】:

标签: curl url-rewriting nginx


【解决方案1】:

一开始就不要重写。

server {
    #listen 80 is default
    server_name _;
    return [HTTP_STATUS_CODE] https://$server_name$request_uri?;
}

[HTTP_STATUS_CODE] 替换为您要发送的任何状态代码。但是在这个地方 301 重定向是正确的,我会去的。如果您使用如上所示的return-方法,nginx 不应返回任何内容,仅返回 HTTP 标头。

【讨论】:

    猜你喜欢
    • 2022-06-23
    • 1970-01-01
    • 2015-07-21
    • 2013-06-29
    • 2020-03-30
    • 2013-07-12
    • 2015-09-11
    • 1970-01-01
    • 2015-02-11
    相关资源
    最近更新 更多