.htaccess 使用Wordpress和非www和https对域进行htaccess重写

.htaccess 使用Wordpress和非www和https对域进行htaccess重写,.htaccess,redirect,https,uri,.htaccess,Redirect,Https,Uri,我正在寻找一个适用于使用非www和https(SLL)以及Wordpress的域的.htaccess配置** 在花了数小时研究堆栈溢出和数百种组合之后,我还没有找到一个htaccess文件来满足我的所有需要 此htaccess文件必须执行以下操作: 将www改写为非www 将http重写为https 保留URI字符串(站点上的url部分) 启用wordpress来处理相当长的链接 http://www.example.com-->https://example.com https://www.

我正在寻找一个适用于使用非www和https(SLL)以及Wordpress的域的.htaccess配置**

在花了数小时研究堆栈溢出和数百种组合之后,我还没有找到一个htaccess文件来满足我的所有需要

此htaccess文件必须执行以下操作:

  • 将www改写为非www
  • 将http重写为https
  • 保留URI字符串(站点上的url部分)
  • 启用wordpress来处理相当长的链接
    • http://www.example.com-->https://example.com
    • https://www.example.com-->https://example.com
    • http://example.com-->https://example.com
    • https://example.com-->https://example.com(必须忽略)
    • http://www.example.com/foo.html-->https://example.com/foo.html
    • https://www.example.com/foo.html-->https://example.com/foo.html
    • http://example.com/foo.html-->https://example.com/foo.html
    • https://example.com/foo.html-->https://example.com/foo.html(必须忽略)

    我终于自己解决了这个问题

    将以下代码添加到.htaccess文件中

        # BEGIN Rewrite so the site works with www and without.
        RewriteEngine On
        RewriteCond %{HTTPS_HOST} ^www\.example\.com$
        RewriteRule ^(.*)$ https://example.com/$1 [R=301]
        # END Rewrite so the site works with www and without.
    
        # BEGIN WordPress
        <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteBase /
        RewriteRule ^index\.php$ - [L]
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule . /index.php [L]
        </IfModule>
        # END WordPress
    
    #开始重写,使网站可以与www一起工作,也可以不与www一起工作。
    重新启动发动机
    重写cond%{HTTPS_HOST}^www\.example\.com$
    重写规则^(.*)$https://example.com/$1[R=301]
    #结束重写,使网站与www一起工作,而不与www一起工作。
    #开始WordPress
    重新启动发动机
    重写基/
    重写规则^index\.php$-[L]
    重写cond%{REQUEST_FILENAME}-F
    重写cond%{REQUEST_FILENAME}-D
    重写规则/index.php[L]
    #结束WordPress
    
    它可能也适用于使用www的网站,但我还没有测试过


    希望这对某人有帮助!:-)

    如果您试图发布信息,请写一个问题,并选中表单底部的
    回答您自己的问题
    框。