php – htaccess添加尾部斜杠并强制www与干净的网址
发布时间:2020-05-25 08:53:38 所属栏目:PHP 来源:互联网
导读:我正在使用我的htaccess文件和mod_rewrite来创建这样的干净网址: IfModule mod_rewrite.cRewriteEngine OnRewriteBase /RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . index.php [L]/I
|
我正在使用我的htaccess文件和mod_rewrite来创建这样的干净网址: <IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]
</IfModule>
我还想强制该网站拥有’www’子域名,并且最重要的是如果网址没有,则添加一个尾随斜杠. 我是mod_rewrite的绝对菜鸟,我尝试通过组合我在google上找到的其他代码来实现这一点(我知道很难过),但我总是以500错误结束. 这是我为force www找到的代码: <IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteCond %{HTTP_HOST} ^www.domain.tld$[NC]
RewriteRule ^(.*)$http://domain.tld/$1 [R=301,L]
</IfModule>
谢谢你的帮助. 尝试分离出www和斜杠检查.经过测试,希望能为您服务.你没有说你是在运行放置在域根目录还是在子目录中 – 通常是在向htaccess寻求帮助时的良好信息.RewriteEngine On
# Assuming you're running at domain root. Change to working directory if needed.
RewriteBase /
#
# www check
# If you're running in a subdirectory,then you'll need to add that in
# to the redirected url (http://www.mydomain.com/subdirectory/$1
RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteRule ^(.*)$http://www.mydomain.com/$1 [R=301,L]
#
# Trailing slash check
# Don't fix direct file links
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$$1/ [L,R=301]
#
# Finally,forward everything to your front-controller
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [QSA,L]
要进行调试,请注释掉各个部分,看看哪些部分不起作用. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
