0

私は現在、このコードを使用して、ファイル名を get パラメーターとして使用して、別の php ファイルをサイレントに呼び出します。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI}  blog/([^/]+)/?$  [NC]
RewriteRule .*   repost_p.php?post=%1  [L]

ファイル名を偽のサブディレクトリにして、2 番目の get パラメータとしてファイル名を追加したい場合はどうすればよいでしょうか?

どうすればそれを行うことができますか?

4

1 に答える 1

0

次のようなものを使用できます。

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/blog/(.*)   /repost_p.php?path=$1  [L]

次に、repost_p.php ファイルで、パス変数をフィルタリングしてサブディレクトリを見つけることができます。

$path = isset($_GET['path']) ? $_GET['path'] ? '';
$params = explode('/', $path);

//params is now an array with all subdirectories.
//Make sure you validate each one for valid input! This can also be used for sql injection
于 2013-05-06T14:08:19.563 に答える