【问题标题】:the right way redirect url using .htaccess使用 .htaccess 重定向 url 的正确方法
【发布时间】:2018-06-20 07:50:06
【问题描述】:

使用 .htaccess 重定向页面的正确方法是什么?

对于前我想将myweb.com/dorama/901110204/todome-no-kiss--paralel 重定向到myweb.com/dorama/1101071510/todome-no-kiss--parallel

但是当我尝试访问旧链接时,直接链接到myweb.com/dorama/1101071510/todome-no-kiss--parallel?cat=dorama&idp=901110204&post=todome-no-kiss--paralel

我的完整 .htaccess 文件

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /

    RewriteCond %{HTTP_HOST} !^www\. [NC]
    RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

    #Redirect Dead Link
    Redirect 301 /dorama/901110204/todome-no-kiss--paralel http://www.piratefiles.org/dorama/1101071510/todome-no-kiss--parallel
    Redirect 301 /dorama/601181905/life-as-a-girl http://www.piratefiles.org/dorama/1101072233/life-as-a-girl
    Redirect 301 /dorama/801130021/todome-no-kiss http://www.piratefiles.org/dorama/1101071405/todome-no-kiss

    RewriteRule ^([A-Za-z]+)/([0-9]+)/([\w-]+)/?$    view.php?cat=$1&idp=$2&post=$3&%{QUERY_STRING}   [NC,L]
    RewriteRule ^category/([\w-]+)/?$ category.php?cat=$1&%{QUERY_STRING}   [NC,L]

    # To externally redirect /dir/abc.php to /dir/abc
    RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+(.+?)\.php[\s?] [NC]
    RewriteRule ^ /%1 [R=301,L,NE]

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME}.php -f
    RewriteRule ^(.+?)/?$ $1.php [QSA,NC,L]

</IfModule>

ErrorDocument 404 http://www.piratefiles.org/404.php

【问题讨论】:

    标签: apache .htaccess redirect mod-rewrite


    【解决方案1】:

    RewriteRule 指令在 Redirect 指令之前“运行”。因此,如果您想强制重定向以特定顺序运行,您需要将它们全部转换为 Rewrite 指令。

    将三个重定向指令替换为:

    RewriteRule ^dorama/(\d+)/(todome-no-kiss--paralel|life-as-a-girl|todome-no-kiss)$ http://www.piratefiles.org/$1/$2 [R=301]
    

    根据需要进行调整,但这就是失败的原因,并提出了解决方案。

    (另外,这里的标准说明:如果您有权访问主服务器配置,则应尽可能避免使用 .htaccess 文件。.htaccess 文件适用于无权访问主配置的人。)

    【讨论】:

    • 如果我有访问配置,我需要做什么来重定向死链接?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-15
    • 2018-10-25
    • 2021-12-21
    • 1970-01-01
    • 2015-06-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多