[an error occurred while processing this directive]
[APACHE DOCUMENTATION]

Apache HTTP Server Version 1.3

NCSAサーバとの互換性メモ


初期バージョンであるApache 0.8.x以前は多くの部分で、NCSAのhttpdから 変更されている箇所で抜けがありました。そこにはいくつかのgotcha(?) からの警戒があります。 これらのほとんどはconfig のためのパーサーとアクセス制御ファイルが ゼロから書き直されたからです。 初期のサーバがそれを行ったからこそ、現在の自由度があるのかもしれません。 これらはすべて容易に修正が出来ます。 もしあなたが、その他の致命的でない問題を知っていたなら 我々に知らせてください。

known bugsページとknown client problemsページもチェックしてください。

  1. 基本的なmod_auth AuthGroupFile−グループを定義した ファイルフォーマットはカンマで囲まれたユーザ名を許可します − をApacheは行いません。
    - 追加 12/1/96
  2. もしクライアントドメインを基にしたアクセス制限をセットアップするためのNCSAガイドラインに従えば、AuthType, AuthName, AuthUserFileAuthGroupFileの登録を追加してもよいでしょう。これらにはクライアントドメインを基にしたアクセスの制限に関する必要(あるいは割り当て)はありません。

    Apacheが(合理的に)仮定したAuthTypeを見れば、ユーザ名とパスワードを基にした権限の委譲を使っています。

    AuthTypeを外してください。NCSAには不要です。

  3. AuthUserFileはフルパスの名前を指定します。初期バージョンのNCSAとApacheは.htaccessファイルからの相対パスのファイル名を使用できました。これは単純に".htpass"ファイルをアクセス可能な位置に作成した場合 に、このファイル名によって、その内容を見れてしまうという 有名なセキュリティホールでした。 パスワードファイルはドキュメントツリーの外に置くことを推奨します。

  4. OldScriptAliasはもはやサポートされていません。

  5. exec cgi=""はCGIスクリプトでないものを起動した時に 簡単にmalformed headerのレスポンスを返します。
    NCSAはヘッダーが無くても無視します。(これは良くありません)
    解決:CGIを詳細に記述するか、exec cmd=""を代わりに使用してください。 我々はvirtualexec cmdをサポートできるように するかもしれません。

  6. ばかな<Limit> −古いApache 0.6.5で、<Limit GET>命令 はPOSTメソッドに限定していました −  Apache 0.8.8の新しいコアはGETでもPOSTと同様に正しく動作します。 そして、もしあなたが古い機能に頼っていたとしたら変更してください。

  7. FancyIndexingアイコンが壊れる − えーと、いや、これは壊れてなく、 フラットな .xbmファイルを可愛くて更に小さな .gifファイルに 親切なEITケビン(Kevin Hughes)が アップグレードしました。 もし旧バージョンのsrm.confを使用していたら、新しいAddIcon,AddIconByType,andDefaultIconコマンドを追加することを忘れないでください。

  8. IRIXでは、httpd.confの"Group"命令で正確なグループ名("nogroup"など) を指定することが必要で、数字のグループIDは使用できません。 配布しているhttpd.conf、また古いものはデフォルトのグループは"#-1"で 起動しようとしても終了してしまう原因です。

  9. .asis ファイル: Apache 0.6.5 はステータスヘッダを要求し ません。;これは.asisファイルがロケーションヘッダに含まれる時、自動的に追加します。0.8.14はステータスヘッダを要求します。

  10. 1.2b1以前のApacheのバージョンは、最終行がトレーリングの新しい行を持っていなければ、コンフィギュレーションファイルの最終行を無視します。これはコンフィギュレーションファイル(httpd.conf, access.conf and srm.conf)とhtpasswd、htgroupファイルに影響します。
  11. Apacheは<Limit>でメソッドの範囲を定めるコンマを認めていません。
  12. Apacheの<VirtualHost>は全てのアドレスをオプションとして扱います(すなわち、アドレスを解析できなければ、サーバはブートし続けなければなりません)。一方、追加されたオプションのキーワードが含まれていない限り、NCSAではデフォルトがブートに失敗し続けます。
  13. Apacheは、OnDenyが代わりにErrorDocumentを使う条件を満たしていません。
  14. Apache(1.3において)は常にHostnameLookups minimalと同じ働きをします。minimal HostnameLookupsに対するオプションではありません。
  15. 命令の引数でスペースを包埋するために、NCSAはスペースの前にバックスラッシュを使っていました。Apacheは通常の文字としてバックスラッシュを扱います。スペースの包埋は、代わりに二重引用符で引数を囲みます。
  16. ApacheはNCSAのreferer命令を満たしていません。Apacheで同じことを実行するための代替方法に関する簡潔な助言について、PR#968を参照してください。
More to come when we notice them....

Apache HTTP Server Version 1.3

検索文字
Index Home The English original manual is here.
このページの情報に関わる、ご質問、お問い合わせは、 japache@infoscience.co.jpまで。

JAPACHE ホームページ