有没有办法在没有将'web'目录的内容移动到root的情况下从Symfony应用程序中的url中删除'/ web'?

问题描述 投票:2回答:5

我在使用Symfony创建应用程序时遇到问题,这是在url中出现'/ web'。我找到了一种方法来通过将'web'目录的内容移动到根目录来摆脱这种情况。但我认为这不是一个好的开发实践,必须有其他方法。任何人都可以让我知道,如果有其他方式这样做的事情,比如我们使用htaccess从url中删除app_dev.php吗?

php .htaccess symfony
5个回答
3
投票

在我的情况下我使用wamp服务器并摆脱“/ web”你需要在httpd-vhosts.conf中配置一个虚拟主机,如下所示:

<VirtualHost *:80>
    DocumentRoot C:\wamp\www\YourProjectFolder\web
    ServerName projectName.local
</VirtualHost>

我认为你应该在你的主机服务器上做同样的事情。


2
投票

如果您无法编辑http.conf并且启用了mod_rewrite,只需将.htaccess文件放在Document根目录中,然后将每个请求重定向到/ web文件夹。

RewriteEngine on
RewriteRule ^(.*)$ /web/$1 [L,QSA]

1
投票

不要从Symfony移动/web文件夹。您只需将vhost或Apache默认根目录指向您的Web目录即可。例如 :

你可以改变httpd.conf

# ...
DocumentRoot "your_symfony_folder/web"
<Directory "your_symfony_folder/web">
# ...

0
投票

您可以在项目根文件夹中创建.htaccess(app,bin,src等文件夹在哪里):

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ /web/$1 [QSA,L]
</IfModule>

-2
投票

我想你们都在大汗淋漓。

如果我错了,请纠正我,但我设法通过简单地将所有内容放在根目录中的web目录中来删除它。然后我删除了app_dev.php,并将app.php重命名为index.php。

© www.soinside.com 2019 - 2024. All rights reserved.