0

私はMVCを使用しており、アプリケーション ファイルでは、次のようにルーティングしています。

# Routing
$routing = array(
    '([a-zA-Z]+)\/?'    =>  array('Post', 'view')
);
framework::routing($routing);

これは、「mysite.com/anything/」などのすべての URL が同じテンプレートにルーティングされますが、コンテンツが異なることを意味します。それまでは、すべて問題ありません。

私の問題は、その例外を作りたいということです。

自分のページ「mysite.com/uploads」に直接ブラウザにアクセスしたいのですが、ルーティング php が原因でリダイレクトされます。

このルーティングを例外にする方法はありますか? "upload" 以外のすべての名前をルーティングしますか?

ルーティングファイルを提出することはできますが、codeigniter とほとんど同じなので、実際には必要ないかもしれません。

ありがとう

4

1 に答える 1

1

URL に index.php の部分が含まれていないことがわかりました。これを行うために .htaccess ファイルを追加したのではないでしょうか。

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

この場合、uploads フォルダーが codeigniter のルート index.php ファイルと同じフォルダーにある場合は、2 行目を次のように変更する必要があります。

RewriteCond $1 !^(index\.php|images|uploads|robots\.txt)

ただし、これはすべて特定の構成に依存します。

編集: CodeIgniter を使用していないようですが、Zend Framework MVC にも同じことが当てはまります。アップロード ディレクトリへの直接アクセスを許可するには、書き換えルールに例外を設ける必要があります。

于 2012-11-03T13:01:54.353 に答える