ページ更新: 2004-06-14 (月) (4641日前)

関連: Cygwin/apache/php

Cygwinの apache パッケージについて。

目次

[編集]

情報源 #

[編集]

Apache #

The Apache HTTP Server Project

Apache HTTP サーバ バージョン 1.3 ドキュメント

Using Apache with Cygwin

[編集]

Cygwin #

Cygwin付属のREADME
/usr/share/doc/Cygwin/apache-1.3.29-1.README

  • To build the application for cygwin
  • Installing apache as service:
  • Files included in the binary distro
  • Port Notes

apacheパッケージの文書
/usr/share/doc/apache-1.3.29-eapi/*

sabimaru web : memo - Cygwin + Apache

[編集]

セットアップ #

[編集]

バージョン確認 #

$ cygcheck -c apache
Cygwin Package Information
Package              Version
apache               1.3.29-2        OK
[編集]

Tips #

[編集]

apache 1.3.29-2 でのオプション変更 "-k" -> "-F" (2004.02.13) #

Cygwin なんでも掲示板 の「apacheをサービス登録で起動したい」より

Cygwinをアップデートしたらサービスでは起動しなくなった。

cygwin 1.5.5-1, apache 1.3.29-2 では、/usr/share/doc/Cygwin/apache-1.3.29-1.README を見たところ:

$ cygrunsrv -I httpd -d "CYGWIN httpd (apache)" -p /usr/sbin/httpd.exe -a "-F" 

とするようだ。同じく、READMEより:

BEWARE: If you have installed 1.3.x-y from the cygwin net distribution
prior to version 1.3.29-y and are using the "-k" option that is passed
to cygrunsrv to leave the main parent process bound to the shell and not
to detach from the shell, the new option is now "-F". This change is due
to the fact that the "-k" switch was a cygwin specific patch and the "-F"
switch is now the "official switch" for it.

要するに、

Cygwin版の1.3.x-yをインストールしていて、cygrunsrvで"-k"オプションを 使っていた場合は、代わりに新しいオプション "-F" を使ってください。 "-k" は Cygwin独自のオプションですが、同じ新たにオフィシャルで同じ働きを する"-F"が用意されました(ので、cygwin版から"-k"オプションがサポート されなくなりました)

ということだろうと。

このとおりの作業で、解決した。めでたし。

2004-06-25

設定にはこんなスクリプトを用意することにした。

#!/bin/sh -x
# File: apache-config.sh
# Purpose: Installs apache daemon as a Windows service
cygrunsrv --install httpd \
          --path /usr/sbin/httpd.exe \
          --args "-F" \
          --type manual \
          --disp "Cygwin httpd" \
          --desc "Apache httpd daemon"
[編集]

影舞を入れた (2003.08ごろ) #

ソフト/Bug Tracking/情報源#kagemai

  • 作業は忘れた。特に苦労しなかったせいか、覚えていない。(そのうち書くけど)
  • PostgreSQLとの連携は試していない。(これもネタにするかな)
  • discypus.jpにも入れるかも。……SourceForge.jp使うまでもないネタ用に、ね。

httpd.confの修正個所。特にCygwinに依存する部分はない。

<IfModule mod_alias.c>
  (略)

   Alias /kagemai "/var/www/kagemai/html"
   <Directory "/var/www/kagemai/html">
       Options +ExecCGI -Indexes
       AllowOverride None

       DirectoryIndex index.html guest.cgi
       AddHandler cgi-script cgi

       Order deny,allow
       Deny from all
       Allow from 127.0.0.1 192.168.0.0/16

	<Files "*.conf*">
	    Deny from all
	</Files>

       <Files guest.cgi>
           AuthName     Kagemai-User
           AuthType     Basic
           AuthUserFile /var/www/kagemai/user.passwd
           Require      valid-user
       </Files>

       <Files admin.cgi>
           AuthName     Kagemai-Admin
           AuthType     Basic
           AuthUserFile /var/www/kagemai/admin.passwd
           Require      valid-user
       </Files>

   </Directory>
</IfModule>
[編集]

動作しないモジュール (2003.07ごろ) #

Apacheパッケージの /etc/apache/httpd.conf には、動作しないモジュールがある。 sslやdavなど。これを使うとhttpdが起動しない(/var/log/apache/error_logに記録される)。

そこで、Apacheパッケージが新しくなるつど、httpd.confの次の個所をコメントアウトすること。

#LoadModule mysql_auth_module  lib/apache/mod_auth_mysql.dll
#LoadModule ntsec_auth_module  lib/apache/mod_auth_ntsec.dll
#LoadModule dav_module         lib/apache/libdav.dll
#LoadModule php4_module        lib/apache/libphp4.dll
#LoadModule ssl_module         lib/apache/libssl.dll
   : (中略)
#AddModule mod_mysql_auth.c
#AddModule mod_auth_ntsec.c
#AddModule mod_dav.c
#AddModule mod_php4.c
#AddModule mod_ssl.c