PHPプロジェクトにフロントコントローラーがあります。これがコードです。
.htaccess
ファイル
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [PT,L]
</IfModule>
index.php
ファイル
<?php
list($url) = explode('?', $_SERVER['REQUEST_URI']);
$url = trim(trim($url), '/');
if(!file_exists('pages/'.$url.'.php')
header('Location: 404.html');
require_once 'inc/head.php';
require_once 'pages/'.$url.'.php';
require_once 'inc/foot.php';
?>
要求されたすべてのURLはindex.phpファイルを経由する必要があると想定しました。しかし\
、URLサーバーに(%5Cとして)ある場合、答えは「見つかりません」です。
質問;
\
なぜキャラクターに例外があるのですか?そのようなキャラクターはいますか?\
Apacheでファイルを検索するための文字の通常の使用は何ですか?なぜ無視しないのですか?- Apacheはどこでファイルを検索し、見つからないのですか?
注:私のシステムは、Apache2.2.21とPHP5.3.10を搭載したWindowsです。注2:これは単なるサンプルコードであるため、より良い方法を提供しないでください。