【问题标题】:Possible to change links and redirect with htaccess?可以使用 htaccess 更改链接和重定向吗?
【发布时间】:2011-06-12 15:22:47
【问题描述】:

这是我的 .htaccess

RewriteEngine on
Options +FollowSymlinks -MultiViews
RewriteRule ^genre/(.*)$ /index.php?genre=$1 [R=301]

mod_rewrite 有效,但旧链接示例也有效:

/index.php?genre=action

仍然有效。我想把它重定向到:

/流派/动作

问题:它们都有效,我希望旧的重定向到新的。

是否可以使用 .htaccess 更改链接。某种 url 替换?

我的链接仍然显示:

www.site.com/index.php?genre=action

我想把它改成:

www.site.com/genre/action

还是我必须手动执行此操作?

谢谢!

【问题讨论】:

    标签: .htaccess mod-rewrite redirect url-rewriting hyperlink


    【解决方案1】:

    [R=301] 导致 HTTP 重定向,状态码为 301。

    随便写

    RewriteEngine on
    Options +FollowSymlinks -MultiViews
    RewriteRule ^genre/(.*)$ /index.php?genre=$1
    

    在服务器端重写 url。

    【讨论】:

    • 我现在正在使用它。 animetard.com/?genre=action 仍然有效且不重定向,并且“操作”链接仍然显示 http://www.animetard.com/?genre=action
    • 该解决方案不会阻止使用 ?genre=action,但 animetard.com/genre/action 现在可以在不更改 url 的情况下使用。
    • 我编辑了帖子以提供一个解决方案,防止使用 ?genre=action。
    • 不重定向我或任何东西:/感谢您的尝试。
    • 嗯,其实你是对的。 “RewriteRule”不匹配查询参数。最好的解决方案是确保您的网站只使用像 /genre/action 这样的网址。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-05-04
    • 2018-07-15
    • 1970-01-01
    • 1970-01-01
    • 2017-02-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多