Top

ドメイン名入門
入門ガイド
管理ガイド基礎
[Email]
[FTP]
[Web]
  サーバーの設定
    設定ファイル
    MIME Type
    HTTP認証
    SSI
    CGI ディレクトリー
    Flash
    WAPプロトコル
  Subhost
    自動設定
    手動設定
  サーバー再起動
  サーバーログ
    ログ解析
   Urchin5 Index
  
 Urchin5インストール
   Urchin5 初期設定
   Urchin5 FAQ
    Analog
    AWStats
    http-analyze
    The Webalizer
    フォーマット
    Rotatelogsと     Savelogs
      サンプルファイル
    ログ整理
  Apacheモジュール
    mod_perl
    mod_php
    mod_dav
    mod_gzip
    mod_negotiation
  サーバー暗号化
    証明書
    デフォルト
    独自の証明書
      1.PrivateKey
      2.証明書取得
      3.インストール
      4.移動
      5.更新
      6.トラブル
  CGI
    CGI Library
      HTTP認証
      .htaccess
      Mail Form
      cgiemail
      comments
      counter
      guestlist
      iwhois
      lookup
      redirect
      tts
    独自CGI
  FrontPage
    インストール
    Subhost使用
  blog Nucleus
    インストール
  PukiWiki
    インストール
[Ports]
[Shell]
[User]
[iManager]
[CPX]
[Webmin]
管理上級編


v3
Top
v3
Start
v3
Email
v3
Ftp
v3
Web
v3
Ports
v3
Shell
v3
User
v3
Perl
v3
Java
v3
System
v3
CPX


mod_negotiation Apache Module

本ページは 2008-04-01 更新されました

Apache Web Server に、複数用意されているドキュメントから、クライアントの能力に一番合ったドキュメントを選択する機能を持たせることができます。
この mod_negotiation モジュール 機能は、コンテンツ ネゴシエーションと呼ばれ、シンプルですが非常に強力です。

利用

mod_negotiation モジュールは、すでに /www/modules/ ディレクトリにリンクされています。
このモジュールを利用するには、/www/conf/httpd.conf ファイルで、以下行のコメントアウトを外してから restart_apache を実行してください。

#LoadModule negotiation_module libexec/mod_negotiation.so

設定

www/conf/httpd.conf ファイルに以下のような設定を追加します。

  1. 以下のように AddLanguage ディレクティブで、言語ディレクティブを追加します。

    AddLanguage en .en
    
    AddLanguage es .es
    
    AddLanguage fr .fr
    
    AddLanguage de .de
    
    AddLanguage it .it
    
    AddLanguage jp .jp

    AddLanguage ディレクティブで、ファイル拡張子 (.en、.es、.fr、.de、.it、.jp)を、対応する言語の省略形 (en、es、fr、de、it、jp) と関連付けます。
    言語の略称は定義済みで、最新のブラウザでは、以下の場所で指定されています。

    • Netscape Navigator
      編集 -> 設定 -> Navigator -> 言語 -> 追加

    • Microsoft Internet Explorer
      ツール -> インターネットオプション -> 全般 -> 言語 -> 追加

  2. LanguagePriority ディレクティブで、以下のように言語優先順位を追加します。

    LanguagePriority en es fr de

    LanguagePriority ディレクティブは、コンテンツ ネゴシエーションで「等価」になった場合や、クライアントのブラウザで優先言語が指定されていない場合(旧バージョンの Web ブラウザ等)のために、優先順位を定義します。
    各言語は、優先順位の高い順に表示されます。

  3. <Directory /usr/local/apache/htdocs><Directory /home/user_name/www/dom.com> のような、対象としたい Documentroot のディレクトリー指定の Options ディレクティブに MultiViews オプションを追加します。
    例えば、httpd.conf が、以下のように設定されていた場合。

    <Directory /usr/local/apache/htdocs>
    
    
    
    # This may also be "None", "All", or any combination of "Indexes",
    
    # "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews".
    
    
    
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    
    # doesn't give it to you (or at least, not yet).
    
    
    
    Options Indexes FollowSymLinks

    以下のように MultiViews オプションを追加します。

    Options Indexes FollowSymLinks MultiViews

    The MultiViews オプションは .htaccess ファイルの Options 定義で設定することもできます。

言語固有のコンテンツの配信

vps サーバーの設定は、上記で完了です。
次は、言語固有のコンテンツを作成し、AddLanguage ディレクティブでの指定に沿った拡張子を付けてアップロードします。
たとえば、index.html ファイルのほかに index.html.en、index.html.es、index.html.fr ファイルを作成します。
ブラウザ クライアントが index.html を要求すると、Web サーバーは Web ブラウザの言語指定を解析し、指定に沿った index.html.* ファイルを配信します。

注意: Web ブラウザが送信した言語設定が、Web サーバーやユーザーが作成したドキュメントで設定されているタイプ定義のいずれにも一致しない場合、Web サーバーは 406 エラー406
(リソースは見つかったが、リソースのタイプが accept で指示されている許容可能なタイプと互換性がないか、または Web ブラウザクライアントによって Web サーバーに送信された accept-encoding ヘッダーと互換性がないため配信できない)
を返します。
例えば、クライアントがギリシャ語のコンテンツ (el) しか受付けない場合で、サーバーに英語、スペイン語、およびドイツ語のコンテンツしかない場合は、クライアントに 406 エラーが返されます。
ErrorDocument スクリプトを作成し、 406 エラーに対して独自の表示をするようにしたほうがよいかもしれません。

詳細情報

詳細情報は以下を参照ください。





SPEEDEX サポートポリシー

Copyright @ Cyber Vision Hosting Co., Ltd. All rights reserved.
Email: support@speedex.ne.jp


株式会社サイバービジョンホスティング提供サービス一覧
再販売用レンタルサーバーのSPEEDEX | VPS(仮想専用サーバー) | 共用サーバー | 独自ドメイン取得・運用 | SSLサーバー証明書 | ワイルドカードサーバー証明書 | SEO | Google Apps(TM) | クリエイティブワークの検索エンジン