0

を使用して新しいコントローラーを作成しました

zf Create Controller About 

しかし、パス(http://mysite.com/about)に移動しようとすると、404が表示されます。詳細は次のとおりです。

サイトはC:\ apache \ htdocs \ mysite.com\publicに設定されています

vhostsファイル(C:\ apache \ conf \ extra \ httpd-vhosts.conf)を変更して、次のような仮想ホストを追加しました

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.localhost
    DocumentRoot "C:/apache/htdocs/mysite.com/public"
    ServerName mysite.com
    ServerAlias mysite.com
    ErrorLog "logs/mysite-error.log"
    CustomLog "logs/mysite-access.log" common
</VirtualHost>

また、127.0.0.1mysite.comなどのWindowsホストファイルへのマッピングを追加しました

これがパブリックフォルダからの私の.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]

http://mysite.comにアクセスできますが、http ://mysite.com/aboutにアクセスしようとすると404が表示されます。

私のhttpd.confには、次のものがあります

<Directory />
Options FollowSymLinks
AllowOverride All
Order deny,allow
Deny from all
</Directory>

<Directory "C:/apache/htdocs">
    Options Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

この作品を作るために私は何が欠けていますか?

4

1 に答える 1

0

このような詳細な構成情報を投稿していただきありがとうございます。

ブロック内に変更AllowOverride Noneする必要があります。AllowOverride All<Directory "C:/apache/htdocs">

AllowOverride がの場合None、これは .htaccess ファイルが処理されないことを意味するため、Zend アプリケーションのフロント コントローラーへの URL の書き換えは行われません。

参照: zend フレームワークで htaccess を構成する方法

于 2012-04-24T01:43:44.800 に答える