まず第一に、これを文書化しました: http://symfony.com/doc/current/cookbook/deployment-tools.htmlこの記事は、最初と 3 番目の質問に答えているだけで、2 番目の質問の答えです:
ライブサーバーで app_dev.php 経由でアプリケーションを呼び出せないようにするにはどうすればよいですか?
Web サイトのルート ディレクトリをそのディレクトリに指定する必要がありますweb。たとえば、サイトが次の場所にあるとします。
mysite.com/
public_html/
... your site files/directories
次のようにする必要があります。
mysite.com/
app/
...
src/
...
vendor/
...
public_html/ <--- this is the old web directory
...
app.php
webディレクトリをpublic_htmlドキュメントに変更する方法も読むことができます: http://symfony.com/doc/current/cookbook/configuration/override_dir_structure.html
これを行う理由は、すべてのアプリケーション コードを保護するためです。ユーザーはすべてapp/.のファイルvendor/.にアクセスsrc/.できないため、構成を読み取ることができず、パラメーターを読み取ることができません。
最後に、 に変更app.phpしindex.phpて のような URL を取得できますmysite.com/app.php/blog/foobar。ただし、単純な HTACCESS mod_rewrite ルールを作成してすべてのリクエストを に送信する方がよいためapp.php、 でページにアクセスできますmysite.com/blog/foobar。
.htaccessルートで:
RewriteEngine On
RewriteBase /
RewriteRule ^(.*?)$ app.php$1