【问题标题】:htaccess redirect to subdirectory by default, but open main site from link in subdirectory sitehtaccess 默认重定向到子目录,但从子目录站点中的链接打开主站点
【发布时间】:2017-05-06 10:03:45
【问题描述】:

这是我的示例网站

http://www.example.com/ - (主站点,英文)

http://example.com/mylang/ - (我的语言网站)

这两个网站都运行多个 wordpress 安装。

现在,当用户进入我的网站时,他必须被重定向到http://example.com/mylang/,如果用户想看的话,有一个链接可以转到主站点http://www.example.com/

我该如何处理.htaccess?我也愿意获得其他(phpjavascript 重定向)解决方案。

【问题讨论】:

  • 这个问题的状态如何?

标签: php wordpress apache .htaccess redirect


【解决方案1】:

你应该把下面的代码放在主站点根文件夹的.htaccess中

RewriteEngine on
RewriteCond %{REQUEST_URI} ^/$
RewriteRule (.*) http://example.com/mylang [R=301,L]

【讨论】:

  • 这相当于http://example.comhttp://example.com/mylang。但是,当从http://example.com/mylang 中单击http://example.com 时,它会再次重定向到http://example.com/mylang。我无法获得主站点。请帮帮我。
【解决方案2】:

main site 上检查是否设置了会话,如果没有重定向。 (注意这必须在发送任何输出之前完成)

session_start();
if(!isset($_SESSION['been_here'])) {
     header('Location: http://example.com/mylang/');
     exit();
}

mylang 上设置会话。

session_start();
$_SESSION['been_here'] = 1;

此会话的持续时间不会重定向到首页访问。

【讨论】:

  • 最初这对我有用。谢谢。但是由于我在 WordPress 中启用了自动更新,因此 index.php 文件会恢复或更新,并且我的代码也会消失。所以我所做的是,在我的本地主机中复制 wp 作为备份,在服务器上重新安装 wp mylang 作为默认值
猜你喜欢
  • 1970-01-01
  • 2014-02-23
  • 2021-07-16
  • 2014-02-23
  • 2010-10-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多