3

今晩 zend をセットアップしましたが、デフォルトのインデックス ページ ( http://home.mitheren.com/399a4/public/ ) が機能します。それ以来、そのコントローラーに新しいアクションを追加しようとしましたが、404 エラーが発生し続けます。

これは、public/ ディレクトリの .htaccess ファイルです。

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

ページ ( http://home.mitheren.com/399a4/public/index/testing ) にアクセスしようとすると、404 エラーと /var/log/apache2/error.log に次のメッセージが表示されます。

[Mon Apr 30 21:44:30 2012] [error] [client 192.168.1.254] File does not exist: /var/www/399a4/public/index.php/testing

ロギングの書き換えも試しましたが、そのページにアクセスすると、次のエントリが取得されます。

192.168.1.254 - - [30/Apr/2012:21:46:54 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9e6020/subreq] (3) [perdir /var/www/399a4/public/] add path info postfix: /var/www/399a4/public/index.php -> /var/www/399a4/public/index.php/testing
192.168.1.254 - - [30/Apr/2012:21:46:54 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9e6020/subreq] (3) [perdir /var/www/399a4/public/] strip per-dir prefix: /var/www/399a4/public/index.php/testing -> index.php/testing
192.168.1.254 - - [30/Apr/2012:21:46:54 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9e6020/subreq] (3) [perdir /var/www/399a4/public/] applying pattern '^.*$' to uri 'index.php/testing'
192.168.1.254 - - [30/Apr/2012:21:46:54 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9e6020/subreq] (4) [perdir /var/www/399a4/public/] RewriteCond: input='/var/www/399a4/public/index.php' pattern='-s' => matched
192.168.1.254 - - [30/Apr/2012:21:46:54 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9e6020/subreq] (1) [perdir /var/www/399a4/public/] pass through /var/www/399a4/public/index.php
192.168.1.254 - - [30/Apr/2012:21:46:54 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9cdf80/initial] (3) [perdir /var/www/399a4/public/] add path info postfix: /var/www/399a4/public/index.php -> /var/www/399a4/public/index.php/testing
192.168.1.254 - - [30/Apr/2012:21:46:54 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9cdf80/initial] (3) [perdir /var/www/399a4/public/] strip per-dir prefix: /var/www/399a4/public/index.php/testing -> index.php/testing
192.168.1.254 - - [30/Apr/2012:21:46:54 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9cdf80/initial] (3) [perdir /var/www/399a4/public/] applying pattern '^.*$' to uri 'index.php/testing'
192.168.1.254 - - [30/Apr/2012:21:46:54 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9cdf80/initial] (4) [perdir /var/www/399a4/public/] RewriteCond: input='/var/www/399a4/public/index.php' pattern='-s' => matched<
192.168.1.254 - - [30/Apr/2012:21:46:54 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9cdf80/initial] (1) [perdir /var/www/399a4/public/] pass through /var/www/399a4/public/index.php

.htaccess ファイルは確実に処理されています (AllowOverride がオンになっていて、変数を追加して php 情報を確認することで確認しました)。

更新:ルールを Vytautas が提案したものに変更すると、書き換えログに次の出力が表示されます。

192.168.1.254 - - [30/Apr/2012:21:59:14 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9ddff0/subreq] (3) [perdir /var/www/399a4/public/] add path info postfix: /var/www/399a4/public/index.php -> /var/www/399a4/public/index.php/testing
192.168.1.254 - - [30/Apr/2012:21:59:14 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9ddff0/subreq] (3) [perdir /var/www/399a4/public/] strip per-dir prefix: /var/www/399a4/public/index.php/testing -> index.php/testing
192.168.1.254 - - [30/Apr/2012:21:59:14 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9ddff0/subreq] (3) [perdir /var/www/399a4/public/] applying pattern '^/399a4/public/.*$' to uri 'index.php/testing'
192.168.1.254 - - [30/Apr/2012:21:59:14 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9ddff0/subreq] (3) [perdir /var/www/399a4/public/] add path info postfix: /var/www/399a4/public/index.php -> /var/www/399a4/public/index.php/testing
192.168.1.254 - - [30/Apr/2012:21:59:14 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9ddff0/subreq] (3) [perdir /var/www/399a4/public/] strip per-dir prefix: /var/www/399a4/public/index.php/testing -> index.php/testing
192.168.1.254 - - [30/Apr/2012:21:59:14 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9ddff0/subreq] (3) [perdir /var/www/399a4/public/] applying pattern '^/399a4/public/.*$' to uri 'index.php/testing'
192.168.1.254 - - [30/Apr/2012:21:59:14 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9ddff0/subreq] (1) [perdir /var/www/399a4/public/] pass through /var/www/399a4/public/index.php
192.168.1.254 - - [30/Apr/2012:21:59:14 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9ec050/initial] (3) [perdir /var/www/399a4/public/] add path info postfix: /var/www/399a4/public/index.php -> /var/www/399a4/public/index.php/testing
192.168.1.254 - - [30/Apr/2012:21:59:14 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9ec050/initial] (3) [perdir /var/www/399a4/public/] strip per-dir prefix: /var/www/399a4/public/index.php/testing -> index.php/testing
192.168.1.254 - - [30/Apr/2012:21:59:14 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9ec050/initial] (3) [perdir /var/www/399a4/public/] applying pattern '^/399a4/public/.*$' to uri 'index.php/testing'
192.168.1.254 - - [30/Apr/2012:21:59:14 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9ec050/initial] (3) [perdir /var/www/399a4/public/] add path info postfix: /var/www/399a4/public/index.php -> /var/www/399a4/public/index.php/testing
192.168.1.254 - - [30/Apr/2012:21:59:14 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9ec050/initial] (3) [perdir /var/www/399a4/public/] strip per-dir prefix: /var/www/399a4/public/index.php/testing -> index.php/testing
192.168.1.254 - - [30/Apr/2012:21:59:14 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9ec050/initial] (3) [perdir /var/www/399a4/public/] applying pattern '^/399a4/public/.*$' to uri 'index.php/testing'
192.168.1.254 - - [30/Apr/2012:21:59:14 +1000] [home.mitheren.com/sid#7f1ffd754120][rid#7f1ffd9ec050/initial] (1) [perdir /var/www/399a4/public/] pass through /var/www/399a4/public/index.php


更新 2: テスト目的で、完全に動作する別のコントローラー (テストと呼ばれる) ( http://home.mitheren.com/399a4/public/test ) を追加しました。これは、私の書き換えルールが少なくともある程度機能することを意味しますか?

更新 3: 解決済み! 2 番目のテスト コントローラーでさらにビューを作成したところ、すべて正常に動作しました。IndexController のリダイレクトにのみ問題があるようです。これが本当の問題なのか私の問題なのかはわかりませんが、今のところ問題ありません。他の誰かがより多くの情報を持っている場合、私はそれを聞きたいと思っていますが、これは私の仕事を成し遂げるために行うべきです.

4

2 に答える 2

0

なんとなく解決しました!2番目のテストコントローラーでさらに多くのビューを作成しましたが、すべて正常に機能します。IndexControllerのリダイレクトにのみ問題があるようです。

これが本当の問題なのか私の問題なのかはわかりませんが、今のところは問題ありません。他の誰かがもっと情報を持っているなら、私はそれを聞きたいです、しかしこれは私の仕事を成し遂げるためにそうするべきです。

于 2012-05-01T01:01:36.470 に答える
0

publicURL には表示されません。正しい URL はhttp://home.mitheren.com/399a4/public/index.phpです

于 2012-04-30T13:36:27.730 に答える