Apache正在重定向到不存在的虚拟主机

时间:2012-03-13 04:44:24

标签: php apache redirect relative-path virtualhost

今天早些时候,我尝试在我的Apache服务器上安装MyImouto图像板软件。我已经在端口80(localhost/wiki/)上安装了完整的MediaWiki引擎,并且在端口3000上的虚拟主机中安装了MyImouto板,与主Web服务器完全分开运行。

在摆弄一下之后,我在主服务器上使用基于php的上传时犯了一个错误,不得不重新安装apache和php,我做了,并升级到最新版本(Apache 2.2.22和PHP 5.4) .0)。我设法让我的设置成功运行,无论是端口3000虚拟主机还是没有。 MediaWiki功能很好,除了一件事。

现在,当我输入http://localhost/wiki/index.php时,就像我过去一直做的那样,有些东西会将其重定向到http://localhost:3000/wiki/index.php/Main_Page并将其转移到其他虚拟主机,而根本没有维基。但是http://localhost/wiki/index.php/Main_Page确实可以正常运作。

.htaccess中有一个localhost:3000文件,我将其重命名为其他内容,但这似乎没有办法。我还尝试清除浏览器缓存以及通过php运行session_destroy。它没有解决它。

我甚至关闭了Apache的httpd.conf中的第二个虚拟主机,但它仍然重定向我,这告诉我它是主Web服务器中的东西。我没有在整个过程中触摸MediaWiki配置或代码。

我还尝试访问http://localhost/phpMyAdmin并将我重定向到http://localhost:3000/phpMyAdmin/,以及执行相同类型操作的http://localhost/AdminToolsHttpd.conf现在不再对虚拟主机*:3000提供任何引用。

但是,我的主索引(http://localhost/index.php)具有以下标题重定向,即使在地址栏中输入http://localhost,它也能成功运行。

header("Location: index.php?content=main");

我尝试在Apache中禁用expires_module和headers_module,认为由于现在重命名的.htaccess文件可能存在一些奇怪的缓存问题。这也没有帮助。另外,我检查了我的主机文件,那里没有什么奇怪的,也没有通过任何东西代理(毕竟这是-is-localhost)。

感谢任何帮助,找出造成这种情况的原因以及解决方法。


  • Windows XP SP3

  • 在Apache中启用模块:

    操作,别名,asis,auth_basic,authn_default,authn_file,authz_default,authz_groupfile,authz_host,authz_user,cgi,dir,env,expires,headers,include,isapi,log,mime,negotiation,rewrite,setenvif,php5

  • 在PHP中启用扩展程序:

    curl,fileinfo,gd2,mbstring,exif,mysql,mysqli,openssl,pdo_mysql,socket

1 个答案:

答案 0 :(得分:1)

我设法搞清楚了。在使用.htaccess和Rewrite Rules(其中没有做任何事情)稍微摆弄之后,我再次查看了我的httpd.conf文件,发现我输错了我的端口-80虚拟主机:

<VirtualHost *:80>
  ServerAdmin -myemail-@gmail.com
  ServerName -blahblah-.no-ip.org:3000
  DocumentRoot "C:/wwwroot/tfg"
  <Directory "C:/wwwroot/tfg">
    OptionsIndexes FollowSymLinks
    AllowOverride All
    Allow from all
    Deny from 186
    Deny from 187
  </Directory>
</VirtualHost>

实际上它应该是ServerName -blahblah-.no-ip.org:80

简单的错别字:总是那些最容易错过的错字。