【问题标题】:Redirect to https as well as removing .html (.htaccess)重定向到 https 以及删除 .html (.htaccess)
【发布时间】:2014-02-13 05:45:00
【问题描述】:

我想在我的网站上强制使用 ssl 并删除我的网址末尾的文件扩展名,例如 http://www.site.com/image.html 将被设为 https://www.site.com/image 我已经有了重定向到 https 的部分但是不能想办法删除第二部分我也不知道如何将它添加到 .htaccess 并让它工作。我一直在使用的代码是

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

我非常感谢一些帮助和道歉,因为我是一个完全的新手。

【问题讨论】:

    标签: apache .htaccess mod-rewrite redirect https


    【解决方案1】:

    将此添加到您的 htaccess 文件中:

    RewriteCond %{THE_REQUEST} \ /+([^\?\ ]+)\.html
    RewriteRule ^ /%1 [L,R=301]
    
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI}.html -f
    RewriteRule ^(.*)$ /$1.html [L]
    

    【讨论】:

    • 这可行,但是我的网站具有文件索引,即:site.com/images/image.jpg .htaccess 删除了 .jpg 但是如果我转到图像页面,我会得到页面上的文件索引一种避免这种情况的方法还是我必须忘记删除文件扩展名?
    • @AlanFletcher 在包含Options -Indexes/images/ 目录中添加一个htaccess 文件。
    猜你喜欢
    • 1970-01-01
    • 2019-06-27
    • 2014-03-26
    • 2020-10-10
    • 1970-01-01
    • 2012-04-03
    • 2012-06-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多