【发布时间】:2018-05-07 06:39:37
【问题描述】:
我刚刚将我的网站从 HTTP 升级到 HTTPS,而我的 .htaccess 之前运行良好,现在却表现得很奇怪。我有以下内容:
- 删除尾部斜杠
- 删除php扩展
...加上其他,但我想这些是有问题的。
在示例页面上,我得到的行为是:
- http://www.navanter.com/e-tips - 没问题
- https://www.navanter.com/e-tips.php - 没问题
- http://www.navanter.com/e-tips.php - 地址栏中的 URL 似乎翻了一番
我是否遗漏了一些明显的东西?代码是:
Order Deny,Allow
DirectoryIndex index.php
# Secure text files
<Files ~ "\.txt$">
Order allow,deny
Deny from all
</Files>
# Redirect non-www to www:
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
ErrorDocument 404 /404.php
RewriteEngine On
# All calls go to SSL
RewriteEngine On
RewriteCond %{ENV:HTTPS} !=on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
# Unless directory, remove trailing slash
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/$ https://www.navanter.com/$1 [R=301,L]
# Redirect external .php requests to extensionless url
RewriteCond %{THE_REQUEST} ^(.+)\.php([#?][^\ ]*)?\ HTTP/
RewriteRule ^(.+)\.php$ https://www.navanter.com/$1 [R=301,L]
# Resolve .php file for extensionless php urls
RewriteRule ^([^/.]+)$ $1.php [L]
【问题讨论】:
标签: .htaccess mod-rewrite