Php
從根 .htaccess 重寫規則中排除目錄以禁止記憶體
在我的燈泡安裝中,我在根文件夾“/”(mydomain.org)中有一個啟動了 W3 總記憶體的 wordpress 多站點,我還有一個名為“ sub ”(mydomain.org/sub)的子目錄,裡面有一個 PHP 腳本。
我在 sub_dir 上有一些記憶體問題,所以我想設置一個 RewriteRule 以從我的 sub_dir 中排除 W3 總記憶體,問題是我對此只有基本知識。
我的根目錄的 htaccess
... # BEGIN W3TC Minify cache <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^[_0-9a-zA-Z-]+/wp-content/cache/minify/[0-9]+/w3tc_rewrite_test$ /wp-content/plugins/w3-total-cache/pub/minify.php?w3tc_rewrite_test=1 [L] </IfModule> # END W3TC Minify cache <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] # add a trailing slash to /wp-admin RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L] RewriteCond %{REQUEST_FILENAME} -f [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^ - [L] RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L] RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L] RewriteRule . index.php [L] </IfModule>
我的 sub_dir 的 htaccess
Options -Indexes +FollowSymLinks RewriteEngine On php_flag opcache.enable Off RewriteBase /sub_dir # exclude any paths that are not codeigniter-app related RewriteCond %{REQUEST_URI} !^/server-status RewriteCond %{REQUEST_URI} !^/server-info RewriteCond %{REQUEST_URI} !^/docs RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d <IfModule mod_php5.c> RewriteRule ^(.*)$ index.php/$1 [L] </IfModule> # the following is for rewritting under FastCGI <IfModule !mod_php5.c> RewriteRule ^(.*)$ index.php?/$1 [L] </IfModule>
這些是我的規格:
- 伺服器版本:5.5.40-0ubuntu0.14.04.1(Ubuntu)
- 阿帕奇 / 2.4.7 (Ubuntu)
- 數據庫客戶端版本:libmysql
- 5.5.40 擴展 PHP:mysqli
- php版本:5.5.9-1ubuntu4.5
您可以定義RewriteCond條件以排除 根 htaccess 中的子路徑。
會是這樣的(未測試)
... # BEGIN W3TC Minify cache <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_URI} !^/sub RewriteRule ^[_0-9a-zA-Z-]+/wp-content/cache/minify/[0-9]+/w3tc_rewrite_test$ /wp-content/plugins/w3-total-cache/pub/minify.php?w3tc_rewrite_test=1 [L] </IfModule> # END W3TC Minify cache ...