2012-01-09 49 views
1

我配置我/etc/apache/httpd.confgetting started教程爲說:symfony的Apache的配置錯誤,控制器沒有得到所謂的

# Be sure to only have this line once in your configuration 
NameVirtualHost 127.0.0.1:8080 

# This is the configuration for your project 
Listen 127.0.0.1:8080 

<VirtualHost 127.0.0.1:8080> 
    DocumentRoot "/var/www/innobo/web" 
    DirectoryIndex index.php 
    <Directory "/var/www/innobo/web"> 
    AllowOverride All 
    Allow from All 
    </Directory> 

    Alias /sf /var/www/symfony/data/web/sf 
    <Directory "/var/www/symfony/data/web/sf"> 
    AllowOverride All 
    Allow from All 
    </Directory> 
Alias /uploads /var/www/innobo/web/uploads 
    <Directory "/var/www/innobo/web/uploads"> 
    AllowOverride All 
    Allow from All 
    </Directory> 
</VirtualHost> 

我在網絡瀏覽器中打開localhost:8080,它工作正常。但是當我嘗試打開其他任何類似localhost:8080/poster時,它會拋出一個404。這不是由symfony重定向的404,它是由apache生成的默認一個!這意味着Apache不會將請求發送給我的控制器,即/var/www/innobo/web/index.php。我在另一臺電腦上嘗試過,它工作正常。那裏的請求到達控制器,一切按預期工作。故障在哪裏?

回答

0

如果app.php /海報的工作,這可能在settings.yml取決於由設置(猜您正在使用的安全模式下工作在後端側):

prod: 
    .settings: 
    no_script_name:   false 

如果是這樣的問題,你必須改變以trueno_script_name參數。

我希望這可以幫助你。

0

聽起來像mod_rewrite沒有開/工作。嘗試localhost:8080/app.php/poster

您還應該運行symfony檢查腳本。默認情況下,你可以找到它,它/web/config.php,所以你應該能夠通過將localhost:8080/config.php在你的瀏覽器訪問它

+0

是的,app.php /海報正在工作 我會嘗試配置腳本 – prongs 2012-01-09 07:18:16

+1

那麼它肯定是mod_rewrite。查找如何安裝/啓用它,以適應您使用的任何服務器的風格。 – MrGlass 2012-01-09 07:33:52