5

PHPフロントコントローラーを作成しています。これは私の.htaccessファイルです。

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule    (.*) controller.php    [L]
</IfModule>

このコードは、すべての URL をcontroller.php. index.phpへのリダイレクトを避ける必要がありcontroller.phpます。他のすべての URL は、controller.php.

4

2 に答える 2

6

次の構文を使用して、例外を作成できます。

RewriteRule name_of_page_to_exclude.php - [L]

ダッシュ ( -) は重要です。は[L]、このルールがトリガーされた場合、それが処理される最後のルールであることを確認します。当然、.htaccess質問のルールの前に、ファイルの上部近くに配置する必要があります。

RewriteEngine on
RewriteRule name_of_page_to_exclude.php - [L]
RewriteRule (.*) controller.php [L]

ドキュメントには、次のように記載されています。

- (ダッシュ) ダッシュは、置換を実行しないことを示します (既存のパスはそのまま渡されます)。

于 2012-04-23T10:20:20.650 に答える
0

次の条件を追加します。

RewriteCond %{REQUEST_FILENAME} !-f

これにより、実際に存在するすべてのファイルが許可され、既存の他のファイルを台無しにしないことが前提となります。

于 2012-04-23T10:13:02.820 に答える