0

すべてのリクエストを 1 つの php ファイルに送信することに問題があります。以前はセットアップで使用していました。

C:/path/app/.htaccess の構成

DirectoryIndex  disabled

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ web/index.php    [QSA,L]

エラーログ

[Fri Apr 19 07:04:04.582078 2013] [rewrite:trace3] [pid 4804:tid 1284] mod_rewrite.c(466): [client 127.0.0.1:65174] 127.0.0.1 - - [127.0.0.1/sid#238bf48][rid#2d9e170/initial] [perdir C:/path/app/] strip per-dir prefix: C:/path/app/ -> 
[Fri Apr 19 07:04:04.582078 2013] [rewrite:trace3] [pid 4804:tid 1284] mod_rewrite.c(466): [client 127.0.0.1:65174] 127.0.0.1 - - [127.0.0.1/sid#238bf48][rid#2d9e170/initial] [perdir C:/path/app/] applying pattern '^(.*)$' to uri ''
[Fri Apr 19 07:04:04.582078 2013] [rewrite:trace2] [pid 4804:tid 1284] mod_rewrite.c(466): [client 127.0.0.1:65174] 127.0.0.1 - - [127.0.0.1/sid#238bf48][rid#2d9e170/initial] [perdir C:/path/app/] rewrite '' -> 'web/index.php'
[Fri Apr 19 07:04:04.582078 2013] [rewrite:trace3] [pid 4804:tid 1284] mod_rewrite.c(466): [client 127.0.0.1:65174] 127.0.0.1 - - [127.0.0.1/sid#238bf48][rid#2d9e170/initial] [perdir C:/path/app/] add per-dir prefix: web/index.php -> C:/path/app/web/index.php
[Fri Apr 19 07:04:04.582078 2013] [rewrite:trace1] [pid 4804:tid 1284] mod_rewrite.c(466): [client 127.0.0.1:65174] 127.0.0.1 - - [127.0.0.1/sid#238bf48][rid#2d9e170/initial] [perdir C:/path/app/] internal redirect with C:/path/app/web/index.php [INTERNAL REDIRECT]

そして、ファイル C:/path/app/web/index.php が存在し、phpinfo() のみです。

<?php

phpinfo();

ログ権限を取得すると、リダイレクトは期待どおりに機能しますが、それでも 404 が返されます。

ここで問題になる可能性のあるアイデアはありますか?

4

1 に答える 1

1

書き換えルールは、フォルダー ベース (既定では Web サーバーのルート) を認識する必要があります。

RewriteBase /app/そのため、直後に設定する必要がありますRewriteEngine on

RewriteEngine on
RewriteBase /app/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ web/index.php    [QSA,L]
于 2013-04-19T15:01:04.723 に答える