问题
I have a problem here with Symfony 2. I want to have virtual host on Windows Vista PC, so I can access my Symfony application like this myapp.local.com
.
What I have tried:
I added these lines to hosts file
127.0.0.1 local.com 127.0.0.1 myapp.local.com
These I added to apache httpd-vhosts.conf
< VirtualHost myapp.local.com:80 > DocumentRoot "d:/data/www/myapp/web" ServerName myapp.local.com Alias /sf /$sf_symfony_data_dir/web/sf < Directory "/$sf_symfony_data_dir/web/sf" > AllowOverride All Allow from All < /Directory > < Directory "d:/data/www/myapp/web" > AllowOverride All Allow from All < /Directory > < /VirtualHost >
but when I write myapp.local.com
in my browser, it brings the index of my www
directory. What am I doing wrong?
回答1:
You are using the virtualhost configuration proposed for Symfony 1.
My virtualhost for Symfony2 under linux looks like this:
<VirtualHost *:80>
ServerName www.domain.com.localhost
ServerAlias domain.com.localhost
ServerAdmin webmaster@localhost
DocumentRoot /home/user/www/project/web
<Directory /home/user/www/project/web/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /app.php [QSA,L]
</IfModule>
</Directory>
</VirtualHost>
Try this (adapted to your config in windows), restart Apache, and try accessing the URL again.
You will find more informations on Symfony2 virtual hosts on this cookbook entry.
回答2:
Windows version for symphony 3.4:
Just simple like this:
C:\xampp\apache\conf\extra\httpd-vhosts.conf
<VirtualHost *:80>
DocumentRoot "C:/xampp/htdocs/symphony_CRUD/web"
DirectoryIndex app_dev.php
ServerName fudu.symphony.net
</VirtualHost>
C:\Windows\System32\drivers\etc
127.0.0.1 fudu.symphony.net
Then you go fudu.symphony.net/app_dev.php
Hope it help some one :)
来源:https://stackoverflow.com/questions/8962054/symfony-2-on-virtual-hosts