我正在使用 HTML5 BP.htaccess文件未经编辑。一切正常,直到我添加自己的重写规则:
Options +FollowSymlinks
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^([a-z]+-?[a-z]+)/$ /$1.php
如果将其添加到它自己的.htaccess
文件中(启动引擎并添加选项后),则效果很好,但添加到 html5 BP 文件中时则不行。我尝试将其放在整个文档中、if 标签内、文档顶部和底部。
我希望当用户输入 mydomain.com/example 时重写以加载 mydomain.com/example.php。
答案1
该表达式不匹配/example
:
/
您在末尾使用了,而不是像替换字符串中那样在开头。鉴于它在 中.htaccess
,并且假设example.php
位于与此文件相同的目录中.htaccess
,那么您根本不需要斜线。如果不是这种情况,请澄清。如果您有权访问服务器配置,请不要使用.htaccess
, 句号。
您有-
as 可选项,但随后您又强制匹配一个或多个字母字符,并且强制使用小写字母。这比它需要的要复杂得多;那么这样如何:
RewriteRule ^([\w-]+)$ $1.php