0

私が使用するすべてのテスト環境で、(仮想サーバーを作成せずに) htdocs から直接 ZendFramework を使用しようとしているいくつかの場所を読みました。これは開発環境です。そのため、セキュリティの問題を気にしたり、ホスト ファイルを毎回変更したりしたくありません。xampp 1.7.3を使用してWindowsで作業しています

Zend 構造を再作成しますが、フォルダー内で htdocs にします。言いましょう: C:\xampp\htdocs\project

今では、プロジェクトのルートで次の .htaccess を使用して解決策を見つけました

RewriteEngine On
RewriteRule ^(.*)$ public/$1?%{QUERY_STRING} [QSA,L]

C:\xampp\htdocs\project\public 内では、デフォルトの Zend .htaccess を使用します

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

私のレイアウトでは、baseタグを追加して、img、css、および js リンクをリダイレクトします。プロジェクト (woff ファイル) に css フォントを含めようとすると、htaccess ルールのどこかにリダイレクトされて 400 エラー コードが発生するという問題が発生します。

私の質問は次のとおりです。ここで何が問題なのですか? すべてのコントローラー(phpファイル)をリダイレクトする方法はありますが、他の既存のファイルはリダイレクトできません

ところで... htaccessファイルを自分で動作させる方法が見つかりません。私はいつも助けを求めていました:(

前もって感謝します

4

1 に答える 1

0

問題の最も簡単な解決策は、次のようにファイルを構成することです。

  • フォルダの中身public/(index.php、.htaccess)を入れC:\xampp\htdocs\projectます。パブリック フォルダーはありません。このアプリケーションでproject/ 、 はパブリック フォルダーです。
  • application/にフォルダを入れますC:\xampp\htdocs
  • セキュリティを強化するために、ドキュメント ルートの外にないため、フォルダーに.htaccess含まれるファイルを追加します。Deny from allapplication/

これにより、ストック ZF .htaccess ルールを使用できるようになり、CSS/JS ファイルをロードするために RewriteBase またはベース URL を使用する必要がなくなります。

baseUrlヘルパーを使用するには、レイアウトまたはビューで URL を参照する場所を確認してください(例: <img src="<?php echo $this->baseUrl('images/foo.png') ?>" />)

于 2012-08-31T18:16:51.810 に答える