1

こんにちは、ローカルホストで正しく動作する zend プロジェクトを作成しました。これをサーバー Web に配置したいのですが、仮想ホストを作成する権限がないため、使用できるのは .htaccess だけです。そのようなルートにhtaccessがあります

RewriteEngine On
RewriteRule !^public/ /public%{REQUEST_URI} [L,R=301]

そして、パブリックフォルダーのhtaccess

SetEnv APPLICATION_ENV production
RewriteEngine On
RewriteBase /public
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

しかし、リモート ページの URL が www.domain.it/public/controlle/action であることがわかりますか?

URL のパブリックを削除するにはどうすればよいですか?

4

1 に答える 1

4

パブリック フォルダーを削除し、ファイルを自分のフォルダーまたは同等のフォルダーに配置.htaccessindex.phpますpublic_html。Zend Frameworkのpublicディレクトリは、実際のパブリック Web ディレクトリが何であれ、単なるプレースホルダーです。

標準の Zend Framework.htaccessファイルを使用します。派手な書き換えルールは必要ありません。

ZF アプリケーション ファイルは、public_htmlフォルダーの 1 つ上のレベルに配置することも、他の任意の場所に配置することもできます。それらを public から 1 レベル上に配置しない場合はAPPLICATION_PATH、正しい場所を反映するように index.php を変更してください。

于 2012-06-18T17:19:55.073 に答える