2011-05-14 42 views
2

我一直在爲在IIS Web服務器上設置我的Symfony項目而奮鬥,但它已經非常成功。如何確保Symfony url_for()包含PHP文件名?

雖然我仍然無法獲得漂亮的網址。當我使用我的開發環境時,url_for會生成類似.../frontend_dev.php/booking/create的URL,並且一切正常。但是,只要我使用產品環境url_for生成的URL看起來像.../booking/create,這可能是因爲IIS上的重寫設置問題。

我不想嘗試在IIS上進行正確的重寫 - 我已經塞滿了很多年,現在已經放棄了。如果你有一顆銀彈來解決我的問題,那麼我很想知道,但這不是真正的問題。

我發現撥打.../index.php/booking/create工作正常。因此,我可以通過確保url_for始終添加文件名來解決我的問題。但我該怎麼做?我認爲它可能只是假設index.php,所以我製作了一個名爲frontend.php的副本,但它仍然會生成很好的URL,但沒有文件名。看起來,如果它是開發環境,它會添加文件,但如果它是prod環境,則會隱藏它。任何想法如何覆蓋這個?

回答

6

apps/appname/config/settings.yml中,將no_script_name設置爲false

查看symfony Reference Book

+0

我想你的意思是把它設置爲「假」 - 完美的工作!謝謝。 – user700774 2011-05-14 09:21:28

+0

@ user700774'true','false',真的都一樣。樂意效勞! – lonesomeday 2011-05-14 09:22:18