セキュリティ上の理由と、許可されていない人に静的ファイルを公開したくないため、すべてのリクエストが PHP に渡されます。
$_SERVER["REQUEST_URI"]
変数を介して誰かが悪意のあるコードを挿入する可能性が心配です。サブフォルダーの参照を削除しようとしましたが、安全かどうかはまだわかりません。
ニンクス
rewrite ^ /index.php last;
index.php
<?php
$uri = $_SERVER["REQUEST_URI"];
$uri = strlen ($uri) > 1 ? substr ($uri, 1) : "index.html";
$uri = preg_replace ("/\/?\.\./", "", $uri, -1); // Remove sub-folders
if (file_exists (getcwd () . "/" . $uri)) {
$extension = substr ($uri, strrpos ($uri, "."));
switch ($extension) {
case ".css": $mime = "text/css"; break;
case ".js": $mime = "application/javascript"; break;
default:
$info = finfo_open (FILEINFO_MIME_TYPE);
$mime = finfo_file ($info, $uri);
finfo_close ($info);
break;
}
if ($mime === false)
header ("Content-Type: text/html; charset=utf-8"); // Default
else
header ("Content-type: " . $mime);
require ($uri);
}
else {
// Error, blah blah blah
}
?>