0

我正在使用带有 _get 变量的页面的网站上工作,例如,您可以通过使用 www.thewebsite.com/users/username 访问 www.thewebsite.com/users.php?uservar=username。

我遇到的问题是,当我还尝试添加 url 重写时,它也会切断文件扩展,因此 aboutus.php 变成关于我们的。

我可以在一个 .htaccess 文件中拥有这两个功能吗?

我试过了,但似乎效果不佳

RewriteEngine on
RewriteRule ^([^/\.]+)/?$ /user.php?page=$1 [L]
4

1 回答 1

1

您可以同时拥有两者,但您需要将路由规则(以 user.php 为目标的规则)低于尝试重新附加扩展的规则。所以是这样的:

# whatever rule you have to re-attach the extension:
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ /$1.php [L]

# now your user routing rule, make sure you add the condition:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/\.]+)/?$ /user.php?page=$1 [L]
于 2013-01-04T23:25:29.387 回答