私は現在、当分の間、サブディレクトリ内でホストする必要がある Symfony2 アプリケーションに取り組んでいます。通常は Apache vhost の DocumentRoot を変更しますが、これは現在不可能です。また、ルート ディレクトリに何も配置することもできません (例: 上記public_html/
)。
DocumentRoot は に設定されてい/public_html/
ます。サブディレクトリ内の Symfony2 アプリの構造は次のようになります。
- public_html/
-- dev/
---- app/
---- bin/
---- src/
---- vendor/
---- web/
特別な設定をしなくても、アプリはhttp://example.com/dev/web/app.phpでアクセスできます。ただし、ファイルを移動することなく、これをhttp://example.com/devに変更したいと考えています。
私は次のことを思いつきました.htaccess
:
RewriteEngine on
RewriteCond %{REQUEST_URI} !dev/web/
RewriteRule (.*) /dev/web/app.php/$1 [L]
これはちょっと動作しますが、Symfony2 は次のエラーを報告します: No route found for "GET /dev/"
.
RewriteRule をhttp://example.com/dev/app.php/dashboard (ダッシュボードはもちろん例です) でRewriteRule (.*) /dev/web/$1 [L]
アプリに到達できるように変更すると、結果はhboard になります。http://example.com/dev/app.php/を呼び出すと、/ のページが完全にレンダリングされ、すべてのアセットへのリンクも正常に機能します。No route found for "GET hboard"
どんな助けでも大歓迎です。やがて、このアプリも から に移行するdev/
必要/
があります。したがって、その解決策も大歓迎です。