0

Web サイトに MVC デザイン パターンを実装しているときに問題が発生しました。フォルダー内に「svce」という名前のフォルダーがあります/www(これは私のDOCUMENT_ROOTです)。ファイルを作成し、.htaccessその中に次のコードを書きました。

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$index.php?url=$1 [QSA,L]

httpd.conf次に、ファイルを編集してコメントを外しましたLoadModule rewrite_module modules/mod_rewrite.so

これを行った後でも、機能していRewriteEngineません。を使用してアプリケーションにアクセスしようとするとhttp://localhost/svce/blahblah.php、デフォルトの 404 エラー ページが表示されます。

/svceIT は、ディレクトリ内のインデックス ページのみを表示する必要がありました。

4

1 に答える 1

3

スペースがありません:

# here -----------v
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]

そのスペースがないと、ルールは次のように見える URI を書き換えて に/something/$index.phpurl=$1書き換えようとしますが[QSA,L]、これはおそらく有効なリソースではありません。

さらにAllowOverride All、サーバー構成で設定していることを確認してください。

于 2012-09-26T10:39:32.650 に答える