Symfony2的资产资源路径
问题描述:
在介绍了/ etc/apache2的/网站可用/默认情况下, 我的Apache2设置使我的网站的配置是这样的:Symfony2的资产资源路径
Alias /new/ "/var/www/symfony/web/"
Alias /new"/var/www/symfony/web/"
<Directory "/var/www/symfony/web">
AllowOverride All
Order allow,deny
Allow from xxx.xxx.xxx.xxx
</Directory>
而且我已经启用的Apache2重写模块。
当我访问www.example.com/new/app.php, 的资源加载正常(CSS,JavaScript和图像)。 生成的源代码几乎是这样的:
<link href="/new/css/main.css" ..... />
.....
但是,当我访问www.example.com/new, 的资源无法加载。 当我查看源代码,它几乎是这样的:
<link href="/css/main.css" ..... />
.....
萤火虫说:
www.example.com/css/main.css - 404 Not Found
www.example.com/images/logo.jpg - 404 Not Found
.....
我该怎么办?
答
在/web
目录添加.htaccess
文件用下面的代码:
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
# Explicitly disable rewriting for front controllers
RewriteRule ^app_dev.php - [L]
RewriteRule ^app.php - [L]
RewriteCond %{REQUEST_FILENAME} !-f
# Change below before deploying to production
#RewriteRule ^(.*)$ /app.php [QSA,L]
RewriteRule ^(.*)$ /app_dev.php [QSA,L]
</IfModule>
如果仍然不工作,你可以使用标准的虚拟主机配置,看看到VirtualHost Examples在Apache网站。
对于资产问题,请参阅Asset management documentation。
我希望这个帮助。
你为什么这样做?为什么不使用标准的虚拟主机配置? – Flukey
给我一个链接? 我使用这个,因为这是之前我曾经使用过的配置。 – Kiddo
我们使用www.example.com/new而不是www.example.com/,因为我们已经有一个运行www.example.com的网站,并且它不是基于symfony2的。所以我们决定尝试symfony2并将它发布到www.example.com/new。 – Kiddo