4

justhost.com アカウントの .htaccess ファイルに問題があります。内部で常に 500 エラーが発生し、Web でさまざまな解決策を試しました。私のhtaccessファイルは次のようになります。

ルート HT アクセス

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

アプリ/HTACCESS

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

アプリ/ウェブルート/HTACCESS

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

問題は、エラー ログに次のように表示されることです。

Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.

RewriteBase を / に設定しようとしましたが、問題は解決しません。

4

2 に答える 2

13

3 つの .htaccess ファイルで Rewrite base を使用する必要があります。ディレクトリ app 、 lib 、 plugin 、および vendor を含むルート ディレクトリにあるものは、次のようになります。

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

アプリ/htaccessは次のようになります

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

そして最後に app/webroot/htaccess は次のようになります

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /app/webroot
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

lib がルート フォルダーにない場合は、core.php の値を変更して、関連するアドレスにマップする必要があります。そのためには、クックブックで高度なインストールを確認できます。

于 2013-01-28T04:14:52.633 に答える
1

ファイルのパーミッションを確認してください。

htacess ファイルをオフにして、echo 1;exit; と書きます。index.php を開き、天気が表示されるかどうかを確認します。

于 2015-02-23T12:07:08.997 に答える