【问题标题】:Unwanted Apache redirect behavior不需要的 Apache 重定向行为
【发布时间】:2013-06-22 13:05:31
【问题描述】:

我在 Ubuntu 12.04 服务器上安装的 Apache 将请求重定向到:

http://87.73.120.126

到

http://90.184.18.96/joomla/index.php/jomsocial

地址 87.73.120.126 是我服务器当前的 IP 地址。地址 90.184.18.96 是半年前的地址。

我的问题是:为什么要这样做?以及如何让它停止?

半年前我想向http://90.184.18.96 提出请求重定向到http://90.184.18.96/joomla/index.php/jomsocial 我通过添加这一行来做到这一点:

RedirectMatch permanent ^/$ http://90.184.18.96/joomla/index.php/jomsocial

到文件/etc/apache2/apache2.conf

几天前,我尝试通过将上面的行更改为:

RedirectMatch permanent ^/$ http://127.0.0.1/joomla/index.php/jomsocial

并重新启动服务器。这并没有解决问题! 然后我尝试使用以下命令对字符串 90.184.18.96 进行全局文件搜索:

sudo grep 90.184.18.96 / -irn --exclude-dir={bin,lib64,opt,sbin,tmp,boot,lost+found,proc,selinux,dev,media,root,srv,lib,mnt,run,sys,mail,log,doc,src,recovery-mode} --color

这个搜索发现了几个过时的 CRON 条目,我也修复了它们以使用 127.0.0.1 代替。这也没有帮助。那么,字符串 '90.184.18.96' 可能驻留在哪里?我想它必须在某个地方,以便任何东西都重定向到那个地址。

此服务器从路径 /var/www/joomla/ 运行 Joomla。由于我的 grep-search 不排除这条路径,因此从 Joomla 出现的任何重定向都应该由 grep-search 显示。

【问题讨论】:

    标签: apache redirect joomla ubuntu-12.04 http-redirect


    【解决方案1】:

    两个考虑:

    1. 重定向到 127.0.0.1 将重定向到用户的计算机,而不是您的服务器。如果您只跨越一台服务器,则不应包含服务器的 IP(访问具有域的站点即 www.your-domain.com 并被重定向到 IP 地址并不好)。所以规则应该使用主机变量:%{HTTP_HOST} 和 %{REQUEST_URI} 主机和路径。

    2. 除了 httpd.conf 之外,您的 .htaccess 中也可能有重定向规则,它位于网络服务器根目录中:它是一个隐藏文件,因此您的 grep 可能会跳过它,也请查看一下。注意 .htaccess 和 httpd.conf 的语法略有不同。

    3. 您通过该重定向实现了两件事:指向非根目录 (/joomla) 的安装并设置不同的主页。在 Joomla 中设置主页就像在菜单项编辑器中用星号标记其菜单项一样简单,因此您可能不需要第二部分。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-20
      • 2021-10-31
      相关资源
      最近更新 更多