.htaccess仅在满足条件时才重写

时间:2017-10-04 09:05:05

标签: .htaccess mod-rewrite

目前我正在为我的工作开展Angular 4项目。我有0经验的一件事就是.htaccess文件。

因为我们使用的是Angular,所以我们有以下重写条件:

## Normal Rewrite
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]

RewriteRule ^(.*) /index.html [NC,L]

但是,如果我们正在维护,我希望重定向到maintenance.html。

我找到了以下代码:

## Maintenance rewrite
RewriteCond %{REMOTE_ADDR} !^123\.456\.789\.000
RewriteCond %{REMOTE_ADDR} !^123\.456\.789\.000
RewriteCond %{REMOTE_ADDR} !^123\.456\.789\.000
RewriteCond %{REQUEST_URI} !/maintenance.html$ [NC]
RewriteCond %{REQUEST_URI} !\.(jpe?g?|png|gif) [NC]
RewriteRule .* /maintenance.html [R=302,L]

是否可能有类似的内容:

Maintenance: true

If maintenance === true {

// Execute maintenance rewrite

} else

// Execute normal rewrite 

提前致谢。

0 个答案:

没有答案