.htaccess基本mod_rewrite

时间:2013-03-19 02:02:41

标签: .htaccess

我刚开始学习如何使用.htaccess文件重写网址。

我将如何改变:

http://www.url.net/games/game_one.php

进入这个:

http://www.url.net/games/game-one/

这就是我一直在尝试的

RewriteRule    ^/games/game-one.php    ^/games/game-one/    [NC,L]

2 个答案:

答案 0 :(得分:2)

试试这个:

RewriteRule ^(/games/game-one)\.php $1/

所说的是匹配以/ games / game-one开头的任何内容并记住该匹配的第一部分,然后将其替换为第一部分(正则表达式中的捕获组)和斜杠字符。请注意,要匹配句点字符,您必须在其前面加上\ .是一个特殊字符,表示“任何字符”(至少如果您想避免匹配任何字符)。

答案 1 :(得分:2)

如果您希望人们明确使用 / games / game-one / ,则必须重写,以便请求 /game/game-one.php 。所以与你在问题中的相反方式相反。

RewriteEngine On
RewriteRule ^games/game-one/$ /games/game-one.php

如果你想重写其他网址,那么你需要使用类似于先前答案的技术。