0

我有以下格式:

http://www.mydomain.com/view/product/ID/CAT/TITLE

ID 和 CAT 都是数字。所以,一些真实的例子:

http://www.mydomain.com/view/product/1/2/ipod
http://www.mydomain.com/view/product/3/4/40-inch-tv
etc

我想知道我是否应该尝试使用 mod rewrite,以及如何,或者我是否应该修复 PHP 以正确处理路径。我想将上面的内容映射到类似的东西:

http://www.mydomain.com/CATEGORY/SUB_CATEGORY/TITLE

有任何想法吗?

4

2 回答 2

0

重写引擎开启

RewriteBase /

重写规则 ^([A-Za-z0-9]+)$ /$1/ [R]

重写规则 ^([A-Za-z0-9]+)$ index.php?cat=$1

重写规则 ^([A-Za-z0-9]+)/([A-Za-z0-9]+)$ /$1/$2/ [R]

重写规则 ^([A-Za-z0-9]+)/([A-Za-z0-9]+)$ index.php?cat=$1&subcat=$2

重写规则 ^([A-Za-z0-9]+)/([A-Za-z0-9]+)/([A-Za-z0-9]+)$ /$1/$2/$3/ [R ]

重写规则 ^([A-Za-z0-9]+)/([A-Za-z0-9]+)/([A-Za-z0-9]+)$ index.php?cat=$1&subcat= $2&标题=$3

在 php 中,您可以像往常一样获取变量,您还需要为输入的所有变量和/或仅类别或子类别制定规则,否则当有人尝试访问这些页面时,您将得到 404

于 2012-04-27T11:48:51.727 回答
0

我会说你的问题对我来说并不完全清楚。通过您的示例,您希望您的目标 URL 从http://www.mydomain.com/view/product/1/2/ipod.

会是:http://www.mydomain.com/2/1/ipod

如果是,则启用 mod_rewrite 和 .htaccess httpd.conf,然后将此代码放在您.htaccessDOCUMENT_ROOT目录中:

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

RewriteRule ^view/product/([0-9]+)/([0-9]+)/(.*)$ $2/$1/$3 [L,R,NC]
于 2012-04-27T12:09:32.907 回答