我的 .htaccess 文件有点问题。我最近为我的网站获得了 SSL 证书,https:// 运行正常。但是,我想将使用 http:// 的任何流量重定向到新的 https://,但这似乎与我之前的规则有冲突。
这是我的.htaccess 文件:
# 404 Document Location
ErrorDocument 404 /404.html
# Turning Redirects On
RewriteEngine On
# Redirection from HTTP to HTTPS
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
# Redirection for filenames ending in .html
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.html [NC,L]
基本上,第一个重定向应该是将人们从 http:// 移动到 https://,第二个重定向是我以前必须从域末尾截断文件类型(例如 /cv.html 只是 /cv)。
有人能看到这个冲突并告诉我如何解决吗?
谢谢!
答案1
尝试这个
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
我认为您可能必须将该规则称为最后一条,然后在下次访问 https 时添加后缀。