2012-01-17 8 views
2

私は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]

+0

私はあなたがURLに直接パブリックフォルダ経由でアクセスすべきではないと思います、どのように仮想ホストをセットアップしましたか? .htaccessはパブリックフォルダ内にありますか?パブリックフォルダはあなたのサイトの 'DocumentRoot'バーチャルホスト設定ですか? – jere

+0

コントローラのフォルダはどのように見えますか? –

+0

@JamesButler "zf create project myapp"によって作成される標準のZend Frameworkディレクトリです。 –

答えて

1

視聴のために

おかげで、私は解決策を見つけることになりました。 Ubuntuでは、/ etc/apache2/sites-enabled /ディレクトリに、設定オプションを含む000-defaultというファイルがあります。

AllowOverrideオプションが[なし]に設定されているため、すべてを「すべて」に変更し、Apacheを再起動し、voilaに変更しました。ある

sudo a2enmod rewrite 

:、私は確かのmod_rewriteを作るために渡すための完全なサポートをご希望している検索経由でこの質問を見つけた誰を確保するため

は、端末やランニングを開くことで(私がいた)が有効になっていますUbuntuでApache modを有効にする方法

関連する問題