朝、
.htaccess ファイルに 2 つのエントリがあり、それらをもう少し動的にしたいと考えています。
まず、www から www への非 www があります。リダイレクト
<IfModule mod_rewrite.c>
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} !^www\..+$ [NC]
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
ただし、以下のように条件付きで機能させたい
<IfModule mod_rewrite.c>
RewriteCond %{ENV:environment} != "dev" && != "local"
RewriteCond %{HTTP_HOST} {DOESNT_CONTAIN .staging.com}
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} !^www\..+$ [NC]
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
基本的に、私はwwwが欲しいです。env 変数が dev または local と等しくなく、ドメインに .staging.com が含まれていない場合にキックするようにリダイレクトします。
これを並べ替えるにはどうすればよいですか?
第二に、これはほとんど同じ問題です。私はいくつかの認証を取得しています
Order deny,allow
Deny from all
AuthType Basic
AuthUserFile /var/www/vhosts/{HTTP_HOST}/httpdocs/.htpasswd
AuthName "Protected Area"
require valid-user
Allow from 127.0.0.1
Satisfy Any
これを上記と同じ条件でのみ実行したいので: environment != "local" environment != "dev" url doesnt contain .staging.com
何人かがこの問題に光を当ててくれることを願っています。
どうもありがとう!