2

次の.htaccessを使用して、フォルダーまたはファイルが存在する場合を除いて、すべてのリクエストをindex.phpにリダイレクトします。

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php?uri=$1 [QSA]

しかし、 domain.com / things / a / things / bのようなURLを試してみると、index.phpにリダイレクトされますが、他のすべてが台無しになります。HTMLがスタイルシートなどに正しくリンクされていません。

私のアプリケーションはMVC-Frameworkのように機能しています。つまり、すべてがindex.php上で発生します。したがって、パブリックフォルダ内のファイルといくつかの特定のファイルを除いて、他のファイルにアクセスできるようにしたくありません。つまり、ルートのcron.phpと、フォルダ構造の下にあるいくつかのcss / js/imageファイルです。

ファイル構造の詳細:https ://bitbucket.org/BrainInBlack/source-motd-plus/src

または、スタイルシートやその他のものを絶対パス、つまり「http://domain.com/path/to/style.css」などにリンクする必要がありますか?

4

2 に答える 2

2

の前にスラッシュ クライアントを使用します(.*)$ index.php?uri=$1

このコードを使用してください:

RewriteRule ^/client(.*)$ index.php?uri=$1
于 2012-10-09T07:38:50.563 に答える
0

すべてのリンクを絶対リンクに変更するか、追加する必要があります

<base href="http://domain.com/">

あなたのページのヘッダーに。

于 2012-10-10T05:09:44.477 に答える