mod_rewrite无法更改URL

时间:2013-12-13 06:50:24

标签: php apache mod-rewrite

我想将动态网址更改为搜索引擎更容易接受的网址 例如,改变这个:

  

http://myurl.com.au/page.php?id=100&name=myname

  

http://myurl.com.au/100/myname.php

最后

或.html并不重要。

我正在使用Apache 2.2。我没有使用.htaccess,而是将我的代码放在/etc/httpd/conf/vhosts/myfile中 但它不起作用,URL根本不会改变。

Options Indexes Includes +FollowSymLinks
RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)\.php$ /page.php?id=$1&name=$2 [L]

我做错了什么?

2 个答案:

答案 0 :(得分:0)

您的问题中的说明错误或您的规则是倒退的。也许这可行:

Options Indexes Includes +FollowSymLinks
RewriteEngine On    
RewriteCond %{QUERY_STRING} id=(.*)&name=(.*)$
RewriteRule ^/page\.php /%1/%2.php [L]

答案 1 :(得分:0)

经过一些进一步的测试后发现我确实拥有正确的代码。我只是没有戴上头,没想到。期望mod_rewrite在实际执行相反的操作时会神奇地将URL更改为符号链接。现在一切都在为我工作。