首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nginx:除wordpress登录区域外,从https重定向到http

Nginx:除wordpress登录区域外,从https重定向到http
EN

Stack Overflow用户
提问于 2014-04-01 14:31:03
回答 1查看 865关注 0票数 0

我正在为wordpress安装配置Nginx。我正在使用wordpress插件which,它处理登录页面上从http到https的重定向。那么我的nginx服务器看起来是这样的:

代码语言:javascript
复制
server {
        listen 66.175.215.82:80;
        listen 66.175.215.82:443 ssl;
        server_name some.domain.com; 

        root /var/www;
        index index.php index.html redirect.php;

        include /var/www/nginx.conf;

        #For HTTPS
        ssl_certificate /etc/ssl/self-signed/commons-dev.crt;
        ssl_certificate_key /etc/ssl/self-signed/commons-dev.key;
        ssl_session_timeout 5m;
        ssl_protocols SSLv3 TLSv1;
        ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
        ssl_prefer_server_ciphers on;

        # PHP-FPM
        location ~ \.php {
                try_files $uri =404;
                include fastcgi_params;
                fastcgi_index index.php;
                fastcgi_pass php;
        }
}

问题是:

  • AFAIK,Nginx不支持"not“位置,所以我不能说”对于所有不是/wp登录的页面。“
  • 将批发从https重定向到http将导致重定向循环。
EN

回答 1

Stack Overflow用户

发布于 2014-04-01 20:39:11

我会删除wordpress插件,让nginx来处理它。将所有请求重定向到http,然后是wp-login.php的位置匹配,它什么也不做。

代码语言:javascript
复制
location / {¬
    server_name some.domain.com *.some.domain.com;
    return 301 http://some.domain.com$request_uri;
}

location /wp-login.php {
}

我想您也希望/ want /的所有通信量都能到达ssl。在子域上拥有所有ssl流量可能更容易:ssl.some.domain.com,然后禁止通信到常规域上的/wp-login.php和subdomain区域。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22788938

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档