0

私のウェブサイトでは、ほぼすべてのサイトがキャッシュされています。静的 htmfile が php からフォルダーに書き込まれます。

/__turbo_realcache/

mydomain.com/sitex.htmが訪問者によって要求された場合、apache は最初にファイルがここにあるかどうかを調べます。

/__turbo_realcache/sitex.htm

ファイルが見つかった場合は、ユーザーに配信されます。ファイルが cache-subfolder に存在しない場合、リクエストは内部で index.php (出力が生成される場所) にリダイレクトされ、php 経由で出力されます。

これはうまく機能しますが、ドメイン ルートが要求された場合は機能しません。したがって、ユーザーが呼び出した場合

mydomain.com

私が探しているのは: 訪問者が自分のブラウザでmydomain.comを要求している場合、htaccess は静的な htmlfile を検索する必要があります

/__turbo_realcache/index.htm

見つかった場合は、ユーザーに渡します (これを行う方法は?)。見つからない場合は、index.php にリダイレクトします (既に動作しています)。

これは私の完全な htaccess です:

RewriteEngine on

# redirect www to non www
#############################################################################
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]


# search for realcache static files. if found stop and be happy.
#############################################################################
RewriteCond         %{DOCUMENT_ROOT}/__turbo_realcache/%{REQUEST_URI}  -f
RewriteRule  ^(.+)  %{DOCUMENT_ROOT}/__turbo_realcache/$1  [L]


# Don't apply to URLs that go to existing files or folders.
# Everything else goes to index.php where I decide what is shown to the user.
#############################################################################
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php
4

1 に答える 1

0

realcache 静的ファイルルールの後にこれを追加します。

RewriteCond  %{REQUEST_URI}  ^/$
RewriteCond  %{DOCUMENT_ROOT}/__turbo_realcache/index.htm  -f
RewriteRule  ^  %{DOCUMENT_ROOT}/__turbo_realcache/index.htm  [L]
于 2013-07-18T14:30:49.857 に答える