Apacheの構成ドメインジャンプ
ドメイン名ジャンプ
これは、正規表現Perlの言語仕様に基づいて、ジャンプを実現し、実際のURLアドレスを隠すことです。通常、私たちは、準静的、準ディレクトリ、ドメインジャンプを達成するのを助ける、およびのでホットリンクを防ぎます。
パラメータのフォーマット
パラメータ: Apacheのmod_rewriteの書き換え規則 1。)R&LT [= コード(リダイレクト力)が外部リダイレクト力 説明:別のHTTPの文字列の力:// thishost [:thisport] /プレフィックスリダイレクトURL外部にならコードが指定されていない場合、デフォルトは302 HTTPステータスコードになります。 2 )無効にURLを禁じBEのURL)にF(フォースは、403HTTPステータスコードを返します。 3 )G(URLはゴーンフォース)力URL GONE、410HTTPリターンステータスコードすることができます。 4 )P(プロキシ・フォース)エージェントを転送強制。 5)L(最終現在のルールが最後のルールであることをルール)、書き換えルールの後に分析を停止します。 6 )N(次のラウンドは)最初のルール書き換え処理の動作を再開する。 7 )C(連鎖次にルールに)次のルールに関連付けられている 。8)T = MIME- タイプ(MIMEタイプ力)が強制MIMEタイプ 9)のみを使用しNS(IF NO内部サブ・要求が)のみ内部サブリクエストのために使用されていない 10)NC(NO ケース)ケース鈍感である 11。)QSA(クエリ文字列APPEND)追加要求列 12である)NE(NO出力のURIをエスケープ)出力エスケープの特殊文字のない 説明: RewriteRule /foo/(.*)/バー?=のArg P1の$%の3D 。1 [R&LT、NE] /バーにできる正しく変換する/ FOO /動物園になりますか?=のArg = P1の動物園 13で通過するように)PT(次へハンドラ)次の処理に渡され た命令ます。RewriteRule ^ / ABCは(*)/ DEF $ 。1 [PT]は#を処理するために/ DEFルールになりますエイリアス/ DEF / GHI 14)S = NUM(次のルールをスキップ(S) )NUM文書規則スキップ 15)= E VARに:VAL(環境変数のセット)セット環境変数 16 )代表またはOR 注:ルールは通常の処理と一致した場合、8無効)あなたが一致しない場合記号の後に、次のルールが関連するすべてスキップされます。
フォーマット: モジュールを呼び出す#1 mod_rewrite.c <のIfModule mod_rewrite.c> #オープンrewirte機能 にRewriteEngine ホスト#ステートメントクライアントの要求プレフィックスがwww.client.cnていない のRewriteCond%(HTTP_HOST)^ www.client.com $ #含意があればということですクライアントのホストプレフィックス要求は、上記の条件、直接ジャンプを満たしています。 基本のAuthType ^ $ HTTP(*):// www.server.com/$1 [R&LT = 301、L] </のIfModule>
コンフィギュレーションの例
そこに書き換えモジュール、ドメインジャンプモジュールかどうかを調べるために1、
コマンド:apache2の/ binに/はapachectl -M | grepのrewritの rewrite_module(共有) なしがある場合: <BR> #編集メインの設定ファイルと抽出液のコメントは httpd.confのVIM <BR> LoadModuleのrewrite_moduleモジュール / mod_rewrite.so 注意:あなたがいない場合はモジュール、モジュールは、ツールAPXSインストールする必要があります。
2、仮想ホストの設定ファイルを変更します
vimのhttpd- vhosts.conf #1对1域名跳转 の<VirtualHost *:80 > DocumentRootの" は/ usr / local / htmlの" ServerNameのwww.server.com にServerAlias www.aaa.com <のIfModule mod_rewrite.c> RewriteEngineに するRewriteCondの% {HTTP_HOST} ^ www.aaa.com $ するRewriteRule ^ /(。*)$のhttp:// www.server.com/$1 [R = 301、L] </のIfModule> <ディレクトリは/ usr / local / HTML> 必要すべての付与された </ディレクトリ> </ VirtualHost>の #1对多域名跳转 の<VirtualHost *:80 > DocumentRootの"/ usr / local / htmlの「 ServerNameのwww.server.com にServerAlias www.aaa.com にServerAlias www.bbb.com <のIfModule mod_rewrite.c> RewriteEngineに するRewriteCondの%{HTTP_HOST} ^ www.aaa.com $ [OR] のRewriteCond% {HTTP_HOST} ^ www.bbb.com $ するRewriteRule ^ /(。*)$のhttp:// www.server.com/$1 [R = 301、L] </のIfModule> <ディレクトリは/ usr / local / HTML> 必要すべての付与された </ディレクトリ> </ VirtualHost>の 配置文件
注:ジャンプステータスコード 永久リダイレクトの301代表 302の一時的なリダイレクト 注:$ 1は、ネットワーク・ファイルに続くアドレスを表します。 注:ログイン「 / 」次の形式を入力することができます。 RewriteCondの%(HTTP_HOST) 456 .COM するRewriteRule /(.*)$ HTTP:// 123.com/$1 [R&LT = 301、L]
図3は、設定ファイルを再読み込み
apache2の/ binに/はapachectl優雅
ドメイン名ジャンプ
これは、正規表現Perlの言語仕様に基づいて、ジャンプを実現し、実際のURLアドレスを隠すことです。通常、私たちは、準静的、準ディレクトリ、ドメインジャンプを達成するのを助ける、およびのでホットリンクを防ぎます。
パラメータのフォーマット
パラメータ: Apacheのmod_rewriteの書き換え規則 1。)R&LT [= コード(リダイレクト力)が外部リダイレクト力 説明:別のHTTPの文字列の力:// thishost [:thisport] /プレフィックスリダイレクトURL外部にならコードが指定されていない場合、デフォルトは302 HTTPステータスコードになります。 2 )無効にURLを禁じBEのURL)にF(フォースは、403HTTPステータスコードを返します。 3 )G(URLはゴーンフォース)力URL GONE、410HTTPリターンステータスコードすることができます。 4 )P(プロキシ・フォース)エージェントを転送強制。 5)L(最終現在のルールが最後のルールであることをルール)、書き換えルールの後に分析を停止します。 6 )N(次のラウンドは)最初のルール書き換え処理の動作を再開する。 7 )C(連鎖次にルールに)次のルールに関連付けられている 。8)T = MIME- タイプ(MIMEタイプ力)が強制MIMEタイプ 9)のみを使用しNS(IF NO内部サブ・要求が)のみ内部サブリクエストのために使用されていない 10)NC(NO ケース)ケース鈍感である 11。)QSA(クエリ文字列APPEND)追加要求列 12である)NE(NO出力のURIをエスケープ)出力エスケープの特殊文字のない 説明: RewriteRule /foo/(.*)/バー?=のArg P1の$%の3D 。1 [R&LT、NE] /バーにできる正しく変換する/ FOO /動物園になりますか?=のArg = P1の動物園 13で通過するように)PT(次へハンドラ)次の処理に渡され た命令ます。RewriteRule ^ / ABCは(*)/ DEF $ 。1 [PT]は#を処理するために/ DEFルールになりますエイリアス/ DEF / GHI 14)S = NUM(次のルールをスキップ(S) )NUM文書規則スキップ 15)= E VARに:VAL(環境変数のセット)セット環境変数 16 )代表またはOR 注:ルールは通常の処理と一致した場合、8無効)あなたが一致しない場合記号の後に、次のルールが関連するすべてスキップされます。
フォーマット: モジュールを呼び出す#1 mod_rewrite.c <のIfModule mod_rewrite.c> #オープンrewirte機能 にRewriteEngine ホスト#ステートメントクライアントの要求プレフィックスがwww.client.cnていない のRewriteCond%(HTTP_HOST)^ www.client.com $ #含意があればということですクライアントのホストプレフィックス要求は、上記の条件、直接ジャンプを満たしています。 基本のAuthType ^ $ HTTP(*):// www.server.com/$1 [R&LT = 301、L] </のIfModule>
コンフィギュレーションの例
そこに書き換えモジュール、ドメインジャンプモジュールかどうかを調べるために1、
コマンド:apache2の/ binに/はapachectl -M | grepのrewritの rewrite_module(共有) なしがある場合: <BR> #編集メインの設定ファイルと抽出液のコメントは httpd.confのVIM <BR> LoadModuleのrewrite_moduleモジュール / mod_rewrite.so 注意:あなたがいない場合はモジュール、モジュールは、ツールAPXSインストールする必要があります。
2、仮想ホストの設定ファイルを変更します
vimのhttpd- vhosts.conf #1对1域名跳转 の<VirtualHost *:80 > DocumentRootの" は/ usr / local / htmlの" ServerNameのwww.server.com にServerAlias www.aaa.com <のIfModule mod_rewrite.c> RewriteEngineに するRewriteCondの% {HTTP_HOST} ^ www.aaa.com $ するRewriteRule ^ /(。*)$のhttp:// www.server.com/$1 [R = 301、L] </のIfModule> <ディレクトリは/ usr / local / HTML> 必要すべての付与された </ディレクトリ> </ VirtualHost>の #1对多域名跳转 の<VirtualHost *:80 > DocumentRootの"/ usr / local / htmlの「 ServerNameのwww.server.com にServerAlias www.aaa.com にServerAlias www.bbb.com <のIfModule mod_rewrite.c> RewriteEngineに するRewriteCondの%{HTTP_HOST} ^ www.aaa.com $ [OR] のRewriteCond% {HTTP_HOST} ^ www.bbb.com $ するRewriteRule ^ /(。*)$のhttp:// www.server.com/$1 [R = 301、L] </のIfModule> <ディレクトリは/ usr / local / HTML> 必要すべての付与された </ディレクトリ> </ VirtualHost>の 配置文件
注:ジャンプステータスコード 永久リダイレクトの301代表 302の一時的なリダイレクト 注:$ 1は、ネットワーク・ファイルに続くアドレスを表します。 注:ログイン「 / 」次の形式を入力することができます。 RewriteCondの%(HTTP_HOST) 456 .COM するRewriteRule /(.*)$ HTTP:// 123.com/$1 [R&LT = 301、L]
図3は、設定ファイルを再読み込み
apache2の/ binに/はapachectl優雅