2

我的问题在 StackOverflow 上似乎没有答案,所以这里是:

我想使用根文件夹中的htaccess文件重写以下 URL。

要重写的 URL 是这样的:

http://www.domain.com/subfolder/item/12345

对此:

http://www.domain.com/subfolder/item.php?id=12345

但是我似乎没有做任何工作。如果 item.php URL 位于根文件夹中,我可以使用以下方法成功重写它:

RewriteRule ^item/(.*)$ item.php?id=$1 [NC,L]

...但如果 item.php 文件位于子文件夹中,则不会!

4

2 回答 2

5

您可以在子文件夹中使用以下 .htaccess:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /subfolder

RewriteRule ^item/(.*)$ item.php?id=$1 [NC,L,QSA]

您重写的 URL 将变为:http://domain.com/subfolder/item/123

于 2012-11-30T18:42:51.837 回答
0

这是发送此 URL 的示例(在浏览器地址栏中输入的 URL):

http://www.domain.com/subfolder/item/12345 (可以是任何数字)这个重写的 URL:

http://www.domain.com/subfolder/item.php?id=12345

RewriteEngine on
RewriteRule ^subfolder/item/([0-9]+)/?$ subfolder/item.php?id=$1 [L] 

这些指令只有在有一个子文件夹目录并且在该目录中实际上有一个文件item.php 时才会起作用

于 2012-11-30T20:52:50.027 回答