【问题标题】:.htaccess redirect in wordpress.htaccess 在 wordpress 中重定向
【发布时间】:2013-05-16 20:22:56
【问题描述】:

我想要访问网站“http://kevingstongramado.p.ht/”的用户,

被重定向到“http://kevingstongramado.p.ht/catalogo/”。这实际上是一个 wordpress 网站。

我试过这个:

重定向 301 /http://kevingstongramado.p.ht/http://kevingstongramado.p.ht/catalogo/

将 .htaccess 放在网站的根目录中。不是wordpress所在文件夹的根目录。

没有用。

"catalogo" 是包含打开 wordpress 网站的 'index.php' 的文件夹。

有人吗?

【问题讨论】:

    标签: wordpress .htaccess


    【解决方案1】:

    使用重定向匹配

    如果我没记错的话,你应该使用相对路径。

    在您的根文件夹中创建索引文件 index.htm。那么,

    RedirectMatch 301 /index.htm /catalogo//$1
    

    【讨论】:

    • 内部服务器错误 服务器遇到内部错误或配置错误,无法完成您的请求。请联系服务器管理员 webmaster@kevingstongramado.p.ht 并告知他们错误发生的时间,以及您所做的任何可能导致错误的事情。服务器错误日志中可能提供有关此错误的更多信息。此外,在尝试使用 ErrorDocument 处理请求时遇到 500 Internal Server Error 错误。服务器Apache版本:Apache/2.2.14
    • 我以前试过你的代码,它做了很多重定向,现在,不知道为什么,我无法访问该网站。尝试访问kevingstongramado.p.ht/catalogo
    • 请问,我现在该怎么办?
    • 尝试使用根目录中的索引文件并从那里重定向:在根文件夹中创建索引文件 index.htm。然后,RedirectMatch 301 /index.htm /catalogo//$1
    【解决方案2】:

    .htaccess文件是通过搜索和解释文档根目录下路径中每个目录中每个.htaccess文件的配置来计算的。

    你想要一些类似

    的东西
    RewriteCond ${REQUEST_URI} !^/catalogo/ [NC]
    RewriteRule ^(.*)$ /catalogo/$1 [L]
    

    这使得规则有条件。只有在请求 uri 中不存在 /catalogo/ 时,它才会执行该规则。实际的规则是把所有东西都放在前面,把/catalogo/放在前面……这是文件中要执行的最后一条规则。此文件将在进入/catalogo/ 目录时被重新处理。

    【讨论】:

    • 酷..最好使用 mod_rewrite,是的 :)
    • 这不会让我的浏览器卡住吗?
    • 您的浏览器“卡住”了,因为它正在存储来自服务器的最后一个响应(循环重定向)。如果你清除缓存,它会没事的。它不会再发生了。 mod_rewrite 的优点是,您可以指定不会导致无限循环的规则。您可以缩短 URL,等等..
    • 用当前的实现,是的。如果你删除它,它会再次导致无限循环
    • 嗨@Steve Buzonas。我试过你的实现。它不是重定向。我已经删除了缓存和 cookie。而且,我试图让 Hariprasad 的其他实现恢复,但现在也不起作用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-06
    • 2016-12-28
    相关资源
    最近更新 更多