1

CakePHPでは、.htaccessファイルが機能する必要があるため、mod_rewriteを有効にすると、OSXのApache構成ブロックがWebDAVを介したhtaccessファイルのアップロードと読み取りをブロックしていることがすぐにわかりました。httpd.confgで修正しましたが、ヒットが壁にぶつかりました。

Cakeの構造には、この.htaccessファイルが3つの主要な場所にあります(他にもありますが、これが今重要なことです){、app、webroot}

<IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]
</IfModule>

これらのファイルがOSXサーバー上のそれらの場所にコピーされるとすぐに、WebDAVは機能しなくなります。ディレクトリへの書き込みやディレクトリからの読み取りができなくなりました。mod_rewriteについてはよくわかりませんが、リクエストがWebDAVの場合は、書き換えルールを適用する必要はないと思います。考えや修正が最も役立ちます。

4

1 に答える 1

0

私もこの問題に取り組んでいます。3回の書き換えを修正するために、代わりに仮想ホストをwebrootディレクトリに向けるだけです。

ここに私がhttpd.confに入れたコードがあります

NameVirtualHost localhost:80
<VirtualHost localhost:80>
    DocumentRoot "/Users/yilliot/Sites"
</VirtualHost>
<VirtualHost cake.localhost:80>
    DocumentRoot "/Users/yilliot/Sites/demo/cakephp-1.3/app/webroot"
    <Directory /Users/yilliot/Sites/demo/cakephp-1.3>
        Options FollowSymLinks
        AllowOverride All
    </Directory>
</VirtualHost>

これは良いスタートだと思います。

于 2011-05-27T03:56:05.530 に答える