【问题标题】:.htaccess mod-rewrite question.htaccess mod-rewrite 问题
【发布时间】:2010-01-21 02:30:58
【问题描述】:

嘿,我在模式重写方面有很多问题,这就是我使用的:

RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)$ /creatii.php?creatie_thumb=$2&user=$1 [L]
RewriteRule ^([^/]*)/$ /creatiiuser.php?user=$1

我想要这个链接:

http://creatii.artcrew.ro/creatii.php?creatie_thumb=creatie19&user=dee-dee

看:

like http://creatii.artcrew.ro/dee-dee/creatie19

这很好,它可以工作,没有问题,但我想为另一个链接制定规则

http://creatii.artcrew.ro/categorii.php?numecat=poetry&numesubcat=satire

看起来像

http://creatii.artcrew.ro/poetry/satire

我该怎么做?我必须使用什么规则?

目前如果我访问http://creatii.artcrew.ro/poetry/satire 它访问链接:http://creatii.artcrew.ro/creatii.php?creatie_thumb=satire&user=poetry

我怎样才能使两个链接(第一个和第二个)都工作?

还有一件事,我希望这个链接:http://creatii.artcrew.ro/creatiiuser.php?user=Dan 看起来像 http://creatii.artcrew.ro/Dan 或者如果这不起作用 http://creatii.artcrew.ro/user/Dan 我怎样才能做到这一点?

谁能帮助我? 提前谢谢

【问题讨论】:

    标签: .htaccess mod-rewrite


    【解决方案1】:

    给定 URL http://creatii.artcrew.ro/X/Y,mod_rewrite 应该如何知道 XYcreatie_thumbuser 值还是 numecatnumesubcat 值?

    您需要在 URL 中添加一些内容来区分这些情况。

    例如:

    • http://creatii.artcrew.ro/user/dee-dee
    • http://creatii.artcrew.ro/user/dee-dee/creatie19
    • http://creatii.artcrew.ro/cat/poetry/satire
    重写引擎开启 重写规则 ^user/([^/]*)/([^/]*)$ /creatii.php?creatie_thumb=$2&user=$1 [L] 重写规则 ^user/([^/]*)/$ /creatiiuser.php?user=$1 [L] 重写规则 ^cat/([^/]*)/([^/]*)$ /creatii.php?numecat=$1&numesubcat=$2 [L]

    【讨论】:

    • 嗯,是的,这是对的,但我不能只为一个类别这样做吗?只有一个没有任何映射?其余的都用映射?
    • 是的,您可以有一种类型的映射,不需要 URL 上的任何特殊标记。您需要确保它是第一个 RewriteRule,如果存在与您使用的令牌匹配的可能值(例如“cat”的用户名),它将中断。
    【解决方案2】:

    也许你的规则过于笼统而导致冲突。

    尝试映射此网址

    http://creatii.artcrew.ro/creatii/dee-dee/creatie1 http://creatii.artcrew.ro/categorii/poetry/satire

    从这些示例开始,您可以轻松映射您的网址,而不会与规则发生冲突

    RewriteEngine On
    RewriteRule ^creaati/([^/]*)/([^/]*)$ /creatii.php?creatie_thumb=$2&user=$1 [L]
    RewriteRule ^categorii/([^/]*)/([^/]*)$ /categorii.php?numecat=$1&numesubcat=$2 [L]
    

    做一些尝试:D

    【讨论】:

    猜你喜欢
    • 2012-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-15
    • 1970-01-01
    相关资源
    最近更新 更多