如何解决清除子目录中的URL
在大量研究stackoverflow之后,我无法弄清楚。 我的网站结构如下
index.php
contact.php
about.html
forum(dir)
- index.php
- thread.php
我希望我的htaccess做什么
- 删除.php和.html扩展名,例如:访问联系人页面时,网址应为
www.domain.com/contact/
和www.domain.com/about/
- 用户访问论坛时,网址应为
www.domain.com/forum/thread/10004000/
而不是www.domain.com/forum/thread?id=10004000
我不确定该如何解决。我能够删除扩展名,但是在/
“正斜杠”部分中失败了
这是我的.htaccess部分
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.*)$ $1.html [NC,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php [NC,L]
解决方法
尝试以下代码删除php扩展名,与您可以添加的html相同
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteRule ^forum/thread/(.+) /forum/thread?id=$1 [L]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*\.php$ %{REQUEST_FILENAME}.php [QSA,L]
,
尝试此演示mod_rewrite
link
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。