0

これは私を困惑させました。最近、旅行に行くために急いで VM をセットアップしました。Ubuntu 12.04 と LAMP をインストールしました。PHP のバージョンは 5.5 で、Apache は 2.4 です。自宅のマシンでこれと同じ構成を使用しましたが、正常に動作します。

とにかく、問題は、ZF アプリケーションのインデックス コントローラーのアクションにしかアクセスできないことです。たとえば、domainname/、domainname/index/info です。domainname/test/view などの他のコントローラーを試すと、apache 404 エラーが発生します。(注 - ZF Not Found エラーに注意してください)。

これは URL 書き換えの問題だと思いますが、VM の .htaccess はホーム マシンと同じであり、これを引き起こす仮想ホスト構成には何も表示されません。また、単に URL の書き換えの問題であれば、インデックス コントローラーを含むすべての URL で問題が発生すると考えていました...

これが私の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]

アイデア?

編集: 仮想ホストの構成は次のとおりです。

DocumentRoot /home/kim/www/vhost/public ServerName koop SetEnv APPLICATION_ENV "開発"

<Directory /home/kim/www/vhost/public>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
            Require all granted
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined

4

1 に答える 1

0

わかりましたので、AllowOverride を All に変更する必要がありました。これは、Apache2 が私の .htaccess ファイルを処理するようになったことを意味します。

次に、mod rewrite を有効にしsudo a2enmod rewrite、apache を再起動する必要がありました。sudo service apache2 restart

于 2013-08-26T05:44:13.777 に答える