3

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

我将如何改变:

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]
4

2 回答 2

2

试试这个:

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

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

于 2013-03-19T02:16:48.763 回答
2

如果您希望人们明确地使用/games/game-one/,您必须重写以便它请求/game/game-one.php。因此,与您的问题相反。

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

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

于 2013-03-19T02:27:29.430 回答