Php 隐藏“;“网络”;从Symfony2.8应用程序中的URL

Php 隐藏“;“网络”;从Symfony2.8应用程序中的URL,php,symfony,Php,Symfony,我有两个不同的Symfony2.8应用程序。在开发过程中,可以通过两个独立的域(虚拟主机)访问它们:www.app1.local和www.app2.local。一切正常。但最后,这两个应用程序都应该部署到具有一个域的一台服务器上。因此,我为每个应用程序创建了两个文件夹 文档根是/httpdocs,因此可以通过www.domain.com/test.php访问文件/httpdocs/test.php。两个文件夹是/httpdocs/app1和/httpdocs/app2。每个都包含不同的Symfo

我有两个不同的Symfony2.8应用程序。在开发过程中,可以通过两个独立的域(虚拟主机)访问它们:
www.app1.local
www.app2.local
。一切正常。但最后,这两个应用程序都应该部署到具有一个域的一台服务器上。因此,我为每个应用程序创建了两个文件夹

文档根是
/httpdocs
,因此可以通过
www.domain.com/test.php
访问文件
/httpdocs/test.php
。两个文件夹是
/httpdocs/app1
/httpdocs/app2
。每个都包含不同的Symfony2.8安装以及自己的捆绑包等


问题是什么?URL中的
web
。应用程序的URL看起来像
www.domain.com/app1/web/index.php
,而不是
www.domain.com/app2/web/index.php
。我试图从URL中隐藏此
web
,但我不知道如何执行此操作。

一般来说,它应该通过web服务器本身进行配置。但是,如果您无法访问web服务器的配置(Apache、nginx),则可以执行以下操作

放入您的
/httpdocs/app1
副本
app1/web
,以及
/httpdocs/app2
副本
app1/web

应用程序本身放在其他地方。 例如,它看起来是这样的:

app1/
  app/
  bin/
  ... # <--no web among these folders
  composer.json
  ...
app2/
  app/
  bin/
  ... # <--no web among these folders
  composer.json
  ...
httpdocs/
  app1/
    bundles/
    ....
    index.php
  app2/
    bundles/
    ....
    index.php
(与app2相同,但使用的是
app2

另外,修复这两个
composer.json

"symfony-web-dir": "../httpdocs/app1",

这里的“Web目录”解释了如何在不同的Web服务器上执行此操作,以及在需要时如何覆盖Web目录
"symfony-web-dir": "../httpdocs/app1",