使用.htaccess重写clean&自定义URL结构

时间:2010-07-07 17:13:21

标签: .htaccess

如何重定向

website.com/about.php

website.com/about


此外,是否可以使用.htaccess手动创建子目录的外观?

即。 website.com/project1.php

website.com/projects/project1

非常感谢!

2 个答案:

答案 0 :(得分:0)

是!

您可以使用Apache RewriteEngine模块来实现此目的。文档在这里:http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html

还有很多很好的教程。


规则的一些例子是:

RewriteRule   ^/(\S+).php /$1

RewriteRule   ^/(project\d+).php /projects/$1

然而,这些只是猜测你可能想要达到的目标,总是存在极端情况。 (另外,这些都没有经过测试!)

请记住,上述两条规则并不一定好。请注意有关设置RewriteEngine和使用适当的RewriteRule选项的文档。

例如,在指定许多RewriteRules时,通常指定[L]选项,以便在应用规则后RewriteEngine停止重写。因此,对规则的排序可能很重要。

答案 1 :(得分:0)

以下是将.htaccess放在根目录并使用mod_rewrite

的示例
RewriteEngine on

RewriteRule ^about\.php$ about [R]

RewriteRule ^projects/project([0-9]+)$ project$1.php