首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在设置symfony项目并更改主机文件后,非symfony项目在apache上不再起作用?

问在设置symfony项目并更改主机文件后,非symfony项目在apache上不再起作用?
EN

Stack Overflow用户
提问于 2011-08-19 09:58:09
回答 1查看 932关注 0票数 0

我使用的是xampp。

我在symfony中设置了一个项目,并将其添加到apache httpd.conf中:

代码语言:javascript
复制
<VirtualHost 127.0.0.1:80>
  ServerName www.plusoneboosters.com.localhost
  DocumentRoot "C:\my_xampp\xampp\htdocs\plusoneboosters\web"
  DirectoryIndex index.php
  <Directory "C:\my_xampp\xampp\htdocs\plusoneboosters\web">
    AllowOverride All
    Allow from All
  </Directory>
  Alias /sf "C:\my_xampp\xampp\htdocs\plusoneboosters\lib\vendor\symfony\data\web\sf"
  <Directory "C:\my_xampp\xampp\htdocs\plusoneboosters\lib\vendor\symfony\data\web\sf">
    AllowOverride All
    Allow from All
  </Directory>
</VirtualHost>

我还将其添加到主机文件(Windows)中:

代码语言:javascript
复制
127.0.0.1 www.plusoneboosters.com.localhost

这个项目可以工作,但是所有没有安装symfony的项目都不再工作了-运行localhost/ project /index.php将重定向到symfony项目。

我怀疑这是因为htaccess,但不知道要替换什么才能使它工作。

我还尝试添加另一个虚拟主机,但不起作用。

我该如何解决这个问题呢?

编辑:我想我找到了一个解决方案。

我在httpd.conf中添加了另一个具有不同IP的虚拟主机: 127.0.0.2,它现在似乎工作得很好。我不确定这是不是正确的方法...

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-19 10:07:08

当您开始使用虚拟主机时,您需要定义至少两个虚拟主机来保持您的旧配置正常工作,否则您的symphony vhost将成为默认的vhost并拦截所有请求。因此,在symphony vhost配置之前将以下行添加到apache配置中

代码语言:javascript
复制
# this allows vhost based on hostname and NOT on ip only
NameVirtualHost *

<VirtualHost _default_>
  ServerName localhost
  DocumentRoot "your old document root"
  DirectoryIndex index.php
  <Directory "your old root document root">
    AllowOverride All
    Allow from All
  </Directory>
</VirtualHost>

<VirtualHost *>
  ServerName www.plusoneboosters.com.localhost
  ...
</VirtualHost>

如果您可以访问apache命令行工具,则可以使用apachectl -S检查vhost配置和优先级,这将为您提供所有已定义虚拟主机的报告

Apache virtual host examples

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7116169

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档