2

朝、

.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

何人かがこの問題に光を当ててくれることを願っています。

どうもありがとう!

4

1 に答える 1