URL重写问题

时间:2009-12-28 19:21:57

标签: mod-rewrite url-rewriting

为了将我的网站www.kitesmovie.co.in上的动态网址转换为静态网址。例如:www.kitesmovie.co.in/stories.php?id = 10到www.kitesmovie.co.in/Barbara_Mori_Hrithik_Roshan_New_Movie。

我尝试在htaccess文件中使用重写规则,但它没有用。请告诉我怎么做。

提前多多感谢。

3 个答案:

答案 0 :(得分:1)

你想要实现的目标并不是很清楚。 当您说“将动态网址转换为静态网址”时,您是否真的希望用户输入...?id=10并且名为Barbara_Mori_Hrithik_Roshan_New_Movie的文件存在于您的服务器上?我认为,这是相反的方式 - 你想让用户键入long&好的标题,实际上将其解析为?id=10 如果是这种情况,@ Mike的答案几乎是正确的,您只需要交换最后一行的部分:

RewriteRule Barbara_Mori_Hrithik_Roshan_New_Movie stories.php?id=10 [R,L]

另一个问题 - 你确定.htaccess有效吗?一种简单的检查方法是将.htaccess的内容设置为

order deny, allow
deny from all

看看你是否仍然可以访问该目录。如果可以,这意味着“拒绝所有人”不起作用。然后检查你的apache配置 - 在特定的虚拟主机和/或目录中是否允许.htaccess。

答案 1 :(得分:0)

那里有很多遗漏的信息。如果您使用安装了mod_rewite的apache,请将其放在.htaccess:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule stories.php?id=10 Barbara_Mori_Hrithik_Roshan_New_Movie [R,L]

</IfModule>

答案 2 :(得分:0)

您可能想查看一下这篇文章:http://www.addedbytes.com/for-beginners/url-rewriting-for-beginners/

通常,你会使用像这样的RewriteRule:

RewriteRule ^stories.php?id=10$  Barbara_Mori_Hrithik_Roshan_New_Movie [R=301,L]

如果这不适合您,请随时为您的问题添加更多详细信息。