.htaccess ModReWrite帮助

时间:2009-05-26 18:28:17

标签: php .htaccess mod-rewrite friendly-url

我的ReWrite代码遇到了一些问题。请注意.htaccess文件位于子域文件夹(... public_html / subdomain /)

我只是想重写页面请求:

http://subdomain.mysite.com/home
http://subdomain.mysite.com/index.php?page=home

我的.htaccess文件看起来像这样......

RewriteEngine On
RewriteRule ^/([A-Za-z0-9\-\_])$ /index.php?page=$1

你有什么事吗?

3 个答案:

答案 0 :(得分:3)

您当前的规则可能适用于长度为一个字符的网址(在斜线之后)!

添加+表示一个或多个字符,或添加*表示零或更多

尝试

RewriteEngine On
RewriteRule ^/([A-Za-z0-9\-\_]*)$ /index.php?page=$1

答案 1 :(得分:2)

如果要使用.htaccess文件中的规则,则需要从RewriteRule模式中删除上下文每目录路径前缀。如果.htaccess文件位于文档根目录/中,则需要删除前导/

此外,您需要量化字符集。否则它只会描述一个字符。

所以试试这条规则:

RewriteRule ^([A-Za-z0-9-_]+)$ index.php?page=$1

答案 2 :(得分:0)

我认为

RewriteRule ^([^/]*)$ /index.php?page=$1 [L]

没问题;)