私はUbuntu 11.10(私のローカル開発マシン)でZend Frameworkを使用しています。私はこのURLを自分のアプリケーションに移動すると、フロントページ/インデックスコントローラは正常に動作します:Zend Frameworkコントローラに404エラーを与える
http://localhost/myapp/public
だから私はほとんどの部分はすべてが動作していることを知っています。私のようなもので、別のコントローラにアクセスしようとすると、問題が来る:「/ myappに/公共/ FAQは、このサーバー上に見つかりませんでした要求されたURL」
http://localhost/myapp/public/faq
これは404エラーを返します。
私はZend_Toolを使用して "zf create controller faq"のようなコントローラを作成し、FaqController.phpにデフォルトのindexAction()を与えました。 faq.phtmlビューも作成されました。これはすべて私のラップトップ(Windows XP)でうまく動作するので、設定が必要なことが分かっています。ここで
が私の.htaccess(それはデフォルト一つだ)である:それは仕事を得るための試みで
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
、私は私のhttpd.confファイルにこれを追加し、Apacheを再起動:
<Directory />
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
それがうまくいかなかったとき、私はそれを私の.htaccessファイルに直接書き込もうとしましたが、それもうまくいきませんでした。私は何が欠けていますか? Zendが要求を書き換えてルーティングするのを止めているのは何ですか? [SOLVED]
私はあなたがURLに直接パブリックフォルダ経由でアクセスすべきではないと思います、どのように仮想ホストをセットアップしましたか? .htaccessはパブリックフォルダ内にありますか?パブリックフォルダはあなたのサイトの 'DocumentRoot'バーチャルホスト設定ですか? – jere
コントローラのフォルダはどのように見えますか? –
@JamesButler "zf create project myapp"によって作成される標準のZend Frameworkディレクトリです。 –