Webサーバーを作る

一般的な非固定IP環境でHTTP(Web)サーバーを構築するメモ。また複数のドメインを1台のパソコンで運用できるようにするためのバーチャル設定などもメモ。

XAMPP

XAMPP XAMPP(ザンプ)とは、Apache、MariaDB、PHP、PerlなどのWebアプリケーション実行に必要なソフトウェアをパッケージとしてまとめたもので、作成したWebサイトの動作テストや学習用として利用されることも多いが、実運用での使用もできる。

Windows、Linux、macOSなどで利用でき、Webサーバー、データベース、汎用スクリプトなどをまとめて簡単に導入できるので便利。

nginx

nginx(エンジンエックス)は、処理性能・高い並行性・メモリ使用量の小ささに焦点を当てて開発されたWebサーバー。

Apache HTTP Server

世界で最も多く使われているWebサーバー。Windows、Linux、macOSなどで利用でき、長く培われているだけに信頼性も高く、細かな設定が可能。モジュールを追加することで機能の拡張もできる。

基本設定

※WindowsでApache 2.2.8のときの設定。LinuxでのApache設定は次の項目。
  1. Download Pageから SecureなSSL対応のapacheをダウンロードして、ダウンロードしたファイルを実行してインストール
    (タスクトレイにアイコンがあらわれる)
  2. C:\Program Files\Apache Software Foundation\Apache2.2\confにあるhttpd.confと
    C:\Program Files\Apache Software Foundation\Apache2.2\conf\extraにある
    各confファイルで基本設定 
  3. タスクトレイにあるApacheのアイコンを左クリックしてRestartで再起動
ローカルアクセスならhttp://127.0.0.1/で、独自ドメインやレンタルドメイン等はDDNS設定を行えば
http://○○○.com/などでブラウザからアクセス可能となる。CGIを使用するには以下も続けて設定する

CGIの設定

  1. Download PageからActivePerlをダウンロード
  2. ダウンロードしたファイルを実行して インストール先をC:\usrにする
    (Linux環境で使用されているPerlプログラムを変更せずに使えるようにする為)
  3. Windowsの再起動
  4. httpd.conf内の391行目にある#AddHandler cgi-script .cgiの先頭の#を除き、末尾に .plを追記してAddHandler cgi-script .cgi .plにする

    ※指定フォルダ以下でのみでCGIを有効にする場合<Directory>ディレクティブ内にOptions ExecCGIを追記

PHPの設定

  1. PHPのDownload PageからWindows BinariesのPHP 5.2.8 zip packageを選択(新しいバージョンがでていればそちらを推奨)
  2. ダウンロードするサーバーを選択してダウンロード
  3. ダウンロードしたzipファイルを解凍し、フォルダをphpにリネームして配置する場所に移動(例えばd:\php)
  4. マイコンピュータを右クリック → プロパティ → 明細設定タブの環境変数 → システム環境変数内の変数「Path」を選択し編集ボタン(なければ新規で作成)
  5. 変数値の末尾にd:\php;を追記(元々入力されていたものがセミコロン;で終わっていなければ;を加えた後に追記)してOKボタン
  6. コマンドプロンプトでphp -vと入力してPHPのバージョンが表示されればコマンドラインのPHPはOK
  7. phpフォルダ内のphp.ini-recommendedをコピーしてphp.iniにリネーム
  8. apacheのhttpd.confファイルに以下を追記
    LoadModule php5_module d:/php/php5apache2_2.dll phpのモジュール読み込み
    AddType application/x-httpd-php .php 拡張子の関連付け
    PHPIniDir "d:/php" phpの設定ファイル(php.ini)の場所指定
  9. apacheの再起動
  10. タスクトレイのApacheアイコンから右クリックでApache Monitorを開いて画面下のステータスバーにPHP/5.2.8が表示されていればOK
  11. 一応動作確認のためテキストエディタで以下を記述したファイルを作成し、ファイル名をtest.phpにしてApacheのドキュメントルートに配置して Webブラウザでhttp://127.0.0.1/test.phpにアクセスしてPHPバージョン情報が表示されればOK。
    <html>
    <head><title>PHP INFO</title></head>
    <body>
    <?php phpinfo(); ?>
    </body>
    </html>
  12. あとは環境にあわせてphp.iniファイルを編集

バーチャルホスト設定

httpd.conf内の259行目にある#Include conf/extra/httpd-vhosts.confの先頭の#を除きhttpd-vhosts.confを有効にし、 C:\Program Files\Apache Software Foundation\Apache2.2\extraにあるhttpd-vhosts.confの 19行目及び27行目から42行目を使用環境に合わせて更新

もしくはhttpd-vhosts.confを使わずhttpd.conf内にバーチャルドメイン設定を追記することも可。
その場合は最後尾に追記

※△△△.comと□□□.comの2つのドメイン使用でcgiの許可をDocumentRoot以下のcgi-binフォルダ以下に設定する例
バーチャルホスト設定 NameVirtualHost *:80

<VirtualHost *:80>
ServerName △△△.com
ServerAlias △△△.com *.△△△.com
DocumentRoot "D:/home/web1/www"
<Directory "D:/home/web1/www/cgi-bin">
Options ExecCGI
</Directory>
</VirtualHost>

<VirtualHost *:80>
ServerName □□□.com
ServerAlias □□□.com *.□□□.com
DocumentRoot "D:/home/web1/www"
<Directory "D:/home/web2/www/cgi-bin">
Options ExecCGI
</Directory>
</VirtualHost>

ログの設定

初期設定ではhttpd.conf内の259行目にErrorLog "logs/error.log"(エラーログ)、266行目にLogLevel warn(ログレベル)、288行目にCustomLog "logs/access.log" common(アクセスログ)の設定がされているが このままだとログが設定された指定ファイルにずっと書き続けられるので放っておくと膨大なファイルになりかねない。 自分で定期的にログファイルを交換すればよいが面倒なので自動で定期的にログファイルを切り替えるログローテート(rotatelogs.exe)を使う。 ログローテートついでに以下も変更。
  • 不必要なアクセスログは取らないようSetEnvIfディレクティブを追記
  • ログ解析(AWstats)で読み込めるようアクセスログのLogFormatをcommonからcombinedに変更。
なお、複数のドメインのログが混同しないようログファイルを分けるため 259行目、288行目の先頭に#をつけてバーチャルドメイン設定内に記入。 また、266行目のログレベルはエラーログに記録する内容のレベル設定で通常はこのままでもよいと思うが必要に応じて変更。

アクセスログ SetEnvIf Request_URI "index.txt|logo.bmp|\.(gif)|(jpg)|(png)|(ico)|(css)|(swf)$" nolog
SetEnvIf Remote_Addr 127.0.0.1 nolog
CustomLog "|\"C:/Program Files/Apache Software Foundation/Apache2.2/bin/rotatelogs.exe\" \"D:/home/log/web1/access_%Y-%m-%d.log\" 86400 540" combined env=!nolog

エラーログ ErrorLog "|\"C:/Program Files/Apache Software Foundation/Apache2.2/bin/rotatelogs.exe\" \"D:/home/log/web1/error_%Y-%m-%d.log\" 86400 540"

※上記アクセスログの3行目4行目及びエラーログは表示しきれないため2行になっているが実際は1行。
※Request_URIでログを取らないファイルを指定
※Remote_Addrでログを取らないホストを指定
※86400はログの交換時間で単位は秒。86400で1日
※540はUTC 時間から日本時間のオフセット

ユーザー認証によるアクセス制限(ベーシック認証)

  1. C:\Program Files\Apache Software Foundation\Apache2.2\bin\htpasswd -c C:\www\.htpasswd username
    でパスワードファイルの新規作成(ユーザーを追加する場合は -c を除く)
  2. アクセス制限したい<Directory>ディレクティブ内にAllowOverride AuthConfigを追加
  3. .htaccessファイルかhttpd.confファイル内のアクセス制限したい<Directory>ディレクティブ内に以下を記述
    AuthType Basic
    AuthName "Member Certification"
    AuthUserFile /var/www/.htpasswd
    AuthGroupFile /dev/null
    require valid-user
  4. service apache2 restart

LinuxでのApache設定

Apache 2.2.3のときの設定

基本設定

Vine Linux 4.2にはApacheが組み込み済みなのでおもに設定ファイルの編集のみ。
  1. /etc/apache2/confディレクトリにあるhttpd.confをテキストエディタで開き以下を含め環境に合わせて編集 サンプル
    • User daemonをUser apache(またはnobody)
    • Group daemonをGroup apache(またはnobody)
    • ServerAdminにサーバーに問題が起きた時の報告用メールアドレス(なくても可)
    • ServerNameにサーバー名(△△△.com)とポート番号(通常は80)
    • DocumentRootにWebページのホームディレクトリ
    • <Directory />ディレクティブのOptionsをNone
    ※バーチャルホスト設定時はServerAdmin、ServerNameはここでは設定しない。
  2. /usr/sbin/apache2ctl configtestでスペルチェック
    ※Syntax OKとでればOK
  3. /etc/にあるhostsファイルの127.0.0.1にServerNameを追記。(GUIならデスクトップ → システム管理 → ネットワークの管理でもOK)
    127.0.0.1 www.△△△.net localhost
  4. chkconfig --list apache2 で起動状況の確認。Vine Linuxでは初期設定で自動起動になっているので
    apache2   0:off 1:off 2:off 3:on 4:on 5:on 6:off
    のようになっているはず。上記のようになっていれば設定の更新のため
    /etc/init.d/apache2 restartt でApacheの再起動
    もしapache2   0:off 1:off 2:off 3:off 4:off 5:off 6:offなら
    /sbin/chkconfig httpd on で自動起動の設定をして
    /etc/init.d/apache2 start でApacheの起動

CGIの許可設定

CGIの許可設定方法にはいくつか方法があり、1つ目はScriptAliasで指定ディレクトリ以下にあるファイルをすべて CGIのプログラムファイルとして扱う方法。2つ目は拡張子でCGIのプログラムファイルかどうか判別して <Directory>ディレクティブOptionsの設定でCGIの許可をする方法。
ScriptAliasでの設定 ScriptAlias /cgi-bin/ /usr/local/apache/cgi-bin/  ScriptAlias ルートからのURLアドレス 実際の保存先アドレス
※ScriptAliasはAliasとしてドキュメントルート外にCGIプログラムのディレクトリを配置できる。

<Directory>ディレクティブOptionsでの設定 まずどのファイルがCGIプログラムか区別するためにAddHandlerで指定。
#AddHandler cgi-script .cgiの先頭の#を除いて末尾に.plを追記して以下のようにする。
AddHandler cgi-script .cgi .pl
次にCGIを許可したい<Directory>ディレクティブ内にOptions設定でExecCGIを追記
<Directory "/var/www/cgi-bin">
Options ExecCGI
</Directory>

SSIの許可設定

/etc/apache2/confディレクトリにあるhttpd.conf内でSSIを有効にしたい<Directory>ディレクティブのOptions設定でIncludesを追記。 SSIは許可するが、execコマンドは許可しない場合はIncludesNOExecと記述。 次にAddType text/html .shtmlとAddOutputFilter INCLUDES .shtmlの先頭の#を削除。 <!--#echo var="DATE_LOCAL"-->をshtmlに記述して時間が表示されればOK。

バーチャルホスト設定

△△△.comと□□□.comなど複数のドメインを同一サーバーで扱う場合バーチャルホスト設定をすることで 運用できるようになる。設定内容はhttpd-vhosts.confに記述し、httpd.conf内の Include conf/extra/httpd-vhosts.confの先頭にある#を削除してInclude(読み込み)する。 一応httpd-vhosts.confでなくhttpd.conf内に直接記述してもOK。

△△△.comと□□□.comの2つのドメイン使用でcgiの許可をDocumentRoot以下のcgi-binディレクトリ以下に設定する例
バーチャルホスト設定 NameVirtualHost *:80  リクエストを受けるサーバーのIPアドレスとポート番号

<VirtualHost *:80>
ServerName △△△.com
ServerAlias *.△△△.com  ServerNameの別名
DocumentRoot /home/web1/www/
<Directory "/home/web1/www/cgi-bin">
Options ExecCGI
AddHandler cgi-script .cgi .pl
</Directory>
</VirtualHost>

<VirtualHost *:80>
ServerName □□□.com
ServerAlias *.□□□.com
DocumentRoot /home/web2/www/
<Directory "/home/web2/www/cgi-bin">
Options ExecCGI
AddHandler cgi-script .cgi .pl
</Directory>
</VirtualHost>

ログの設定

初期設定ではhttpd.conf内の184行目にErrorLog logs/error.log(エラーログ)、191行目にLogLevel warn(ログレベル)、213行目にCustomLog logs/access.log common(アクセスログ)の設定がされているが このままだとログが設定された指定ファイルにずっと書き続けられるので放っておくと膨大なファイルになりかねない。 自分で定期的にログファイルを交換すればよいが面倒なので自動で定期的にログファイルを切り替えるログローテート(rotatelogs2)を使う。 ログローテートついでに以下も変更。
  • 不必要なアクセスログは取らないようSetEnvIfディレクティブを追記
  • ログ解析(AWstats)で読み込めるようアクセスログのLogFormatをcommonからcombinedに変更。
なお、複数のドメインのログが混同しないようログファイルを分けるため 184行目、213行目の先頭に#をつけてバーチャルドメイン設定内に記入。 また、191行目のログレベルはエラーログに記録する内容のレベル設定で通常はこのままでもよいと思うが必要に応じて変更。

アクセスログ SetEnvIf Request_URI "index.txt|logo.bmp|\.(gif)|(jpg)|(png)|(ico)|(css)|(swf)$" nolog
SetEnvIf Remote_Addr 127.0.0.1 nolog
CustomLog "|/usr/sbin/rotatelogs2 /var/www/logs/access_%Y-%m-%d.log 86400 540" combined env=!nolog

エラーログ ErrorLog "|/usr/sbin/rotatelogs2 /var/www/logs/error_%Y-%m-%d.log 86400 540"

※Request_URIでログを取らないファイルを指定
※Remote_Addrでログを取らないホストを指定
※86400はログの交換時間で単位は秒。86400で1日
※540はUTC 時間から日本時間のオフセット

suEXECの設定

suEXECとは、CGIプログラムを所有者の権限で起動し、ファイルの読み書きなどをその所有者の権限で行う仕組みのことです。 通常CGIプログラムはapacheやnobodyといったサーバー管理者が指定した権限で実行されるため、 例えばログファイルなどを自動で作成するCGIプログラムをユーザーが作成した場合、 作成されるログファイルの所有者はユーザーではなくCGIプログラム実行権限のあるapacheやnobodyになります。 そのため作成されたログファイルをFTPでユーザーが削除できないことがあります。 それを解消するためにsuEXECを利用します。またsuEXECを利用することでファイルのパーミッションを低く設定できるため、 ログファイルなど一般ユーザーにも更新するための書き込み権限が必要だったのが不必要になり 不用意にログファイルを一般ユーザーに見られなくできたり、 他のユーザーのファイルで所有者がapacheやnobodyになったファイルを誤って削除してしまったりする可能性が減ったりと セキュリティの面でもよくなります。
  1. chmod 4711 /usr/lib/apache2/suexec suexecを有効にする
  2. httpd.conf内でUserおよびGroupがnobodyの場合apacheに変更
  3. バーチャルホストの場合はそのディレクティブ内にSuexecUserGroup username usernameを追記
  4. /etc/init.d/apache2 restartt でApacheの再起動
suEXEC環境をやめるときはchmod 0711 /usr/lib/apache2/suexecでApacheの再起動。

suEXEC環境で注意すべき点は以下のようなものがある。
  • ディレクトリのパーミッションは755以下でないとディレクトリ内のファイルに書き込みできない。
    一般的にsuEXEC設定時はCGIプログラムファイルは701、ログファイルは600、ディレクトリは755です。
  • suEXEC初期設定では/var/www以下以外では動作しない。
  • ユーザーディレクトリ(UserDir)を設定している場合、suEXEC初期設定ではpublic_htmlディレクトリ以下以外では動作しない。
suEXECの設定は /usr/lib/apache2/suexec -V で確認できます。 suEXEC初期設定のDOC_ROOT(/var/www)やUSERDIR_SUFFIX(public_html)以下以外でsuEXEC環境を構築したい場合シンボリックリンクで /home/domain/cgi-bin --> /var/www/home/domain/cgi-binなどのようにするかsuEXECの再構築(リビルド)が必要。 suEXECの再構築は以下のようにする。
  1. apt-get source apache2
  2. rpm ivh apache2-バージョン.src.rpm
  3. cd /tmp
  4. tar zxvf /ログインユーザー名/rpm/SOURCES/httpd-2.2.3.tar.bz2
  5. rm -f /ログインユーザー名/rpm/SOURCES/*
  6. rm -f /ログインユーザー名/rpm/SPECS/*
  7. rm -f /ログインユーザー名/apache2-バージョン.src.rpm
  8. cd httpd-2.2.3
  9. ./configure --enable-suexec \
    --with-suexec-caller=apache \
    --with-suexec-docroot=/home \
    --with-suexec-userdir=public_html \
    --with-suexec-uidmin=500 \
    --with-suexec-gidmin=500 \
    --with-suexec-bin=/usr/lib/apache2/suexec \
    --with-suexec-logfile=/var/log/apache2/suexec.log
  10. make suexec
  11. mv /usr/lib/apache2/suexec /usr/lib/apache2/suexec.bak
  12. mv support/suexec /usr/lib/apache2/suexec
  13. chmod 4711 /usr/lib/apache2/suexec
  14. service apache2 restart
それでもうまくいかないときはApacheのエラーログや/var/log/apache2/suexec.logをみて原因を調べる。

ユーザーディレクトリの設定

ユーザーディレクトリ(UserDir)を設定することで http://○○○.com/~ユーザー名/ のようにひとつのドメインで複数のユーザーが使用できるようになる。
  1. UNIXユーザーを作成しホームディレクトリを /www/ユーザー名 にし、ログインしないユーザーならシェルを/sbin/nologinにする
  2. Vine Linux初期設定のままだとユーザー作成時にホームディレクトリ内にいろいろファイルが自動作成されるので必要に応じて削除
  3. mkdir /www/ユーザー名/public_html
  4. chown ユーザーID:グループID /www/ユーザー名/public_html
  5. /etc/apache2/confディレクトリにあるhttpd.conf内に以下を記述
    UserDir /www/*/public_html
    <Directory /www/*/public_html>
    Options None
    AllowOverride None
    </Directory>
  6. service apache2 restart
これでホームディレクトリ内のpublic_htmlディレクトリ内にindex.htmlなどを配置すれば http://○○○.com/~ユーザー名/ でアクセスできる。

ユーザー認証によるアクセス制限(ベーシック認証)

  1. /usr/bin/htpasswd2 -c /var/www/.htpasswd username でパスワードファイルの新規作成(ユーザーを追加する場合は -c を除く)
  2. アクセス制限したい<Directory>ディレクティブ内にAllowOverride AuthConfigを追加
  3. .htaccessファイルかhttpd.confファイル内のアクセス制限したい<Directory>ディレクティブ内に以下を記述
    AuthType Basic
    AuthName "Member Certification"
    AuthUserFile /var/www/.htpasswd
    AuthGroupFile /dev/null
    require valid-user
  4. service apache2 restart

ヘッダー・フッダーの自動挿入

すべてのページ、または複数の特定のページに同一のヘッダーまたはフッダーを挿入したい場合にはmod_layoutモジュールを使うと便利。
  1. まずVine Linux 4.2にはapxsがインストールされていないのでapache2-devel(apxs)のインストール
    apt-get install apache2-devel
  2. ここからmod_layout-5.1.tar.gzをダウンロード。
  3. /usr/localに配置
  4. cd /usr/local/
  5. tar xzvf mod_layout-5.1.tar.gz 拡張子tar.gzのファイルを展開
  6. cd mod_layout-5.1
  7. Makefileの編集
    APXS=/usr/bin/apxs
    APACHECTL=/usr/sbin/apache2ctl
  8. make
  9. make install
  10. /etc/apache2/conf/httpd.confにモジュールの読み込み記述がなければ追記
    LoadModule layout_module /usr/lib/apache2/modules/mod_layout.so
  11. <IfModule mime_module>ディレクティブ内に以下を追記
    AddOutputFilter LAYOUT html htm html、htmにヘッダーまたはフッダーを挿入
  12. ヘッダーまたはフッダーを挿入したいディレクティブに以下のような感じで記述(.htaccessの場合も同様)
    LayoutHeader /www/header.html
    LayoutFooter /www/footer.html
  13. apacheの再起動
※http://○○○.com/で終わるような場合表示されないかも。
※指定ファイル(ディレクトリ)にヘッダーまたはフッダーを挿入したくない場合、httpd.confまたは.htaccessファイルに以下を追記
LayoutIgnoreURI /diary/*
LayoutIgnoreURI "*.cgi *.pl"

ステータス表示

リアルタイムの稼働状況を知りたい場合や設定されている情報を確認したい場合、 モジュールのmod_statusやmod_infoを使うと便利。
  1. httpd.confに記述してある以下の先頭にある#を除く
    #LoadModule info_module modules/mod_info.so
    #LoadModule status_module modules/mod_status.so
    #Include conf/extra/httpd-info.conf
  2. extraディレクトリ内のhttpd-info.confの記述で<Location /server-status>ディレクティブと<Location /server-info>ディレクティブ内の Allow fromに許可するIPやドメインを記述
    <Location /server-status>
      SetHandler server-status
      Order deny,allow
      Deny from all
      Allow from 127.0.0.1
    </Location>
  3. より明細な情報を見たい場合は#ExtendedStatus Onの先頭にある#を除く
  4. service apache2 restart
これでhttp://△△△.com/server-statusやhttp://△△△.com/server-infoでステータス表示できる。

補足

  • Vine Linux 4.2インストール初期ではPerl version 5.8.6で PerlモジュールのJcode.pmはインストールされていないので標準装備のEncode.pmを使用するか Jcode.pmをインストールするかクライアント側でJcode.pmをライブラリとして用意する必要がある。
  • ログにループバック用のアドレス ::1 の Apache (internal dummy connection) が残ることがあるが、 それはmod_proxy_balancerモジュールを使用しているときになるらしい。mod_proxy_balancerは負荷分散のためのmod_proxy拡張機能で Apacheでロードバランスするためのproxyモジュール。ロードバランスを有効にする場合mod_proxyとmod_proxy_balanceが組み込まれている必要があり、 使用には<Proxy>ディレクティブや<ProxyPass>ディレクティブなどを使います。 mod_proxy_balance参照。 プロキシ機能やその他の有用な機能があるがよく分らないうちは使用すべきではないので止めておくべき。
  • 組み込みモジュールの確認は /usr/sbin/apache2 -l でMPM(Multi Processing Module)がpreforkとworkerどちらなのかも確認できる。
  • Vine Linux4.2でのapacheのMPMは/usr/sbin/apache2.preforkとapache2.workerの2種類が装備されていて初期設定ではpreforkになっている。 workerに変更するにはupdate-alternatives --config apache2でリストが出るのでworkerの番号を選択すれば変更されるのでその後再起動。

AN HTTPD

Windowsで動作する国産のWebサーバーソフトです。設定が日本語でできるということもあり、割りと簡単に構築できるのでちょっとした試験用や小規模サイトなどの利用に便利です。

基本設定

  1. AN HTTPDのオフィシャルサイトは閉鎖しているのでここからAN HTTPDをダウンロードして解凍
  2. 解凍後できたフォルダを適当な保存場所に移動させてからフォルダ内のhttpd.exeを実行するとタスクトレイにアイコンがあらわれます。
    AN HTTPD
  3. ブラウザを開きアドレス欄にhttp://127.0.0.1/readme.htmlと入力し、ページが正常に表示されることを確認
    ※ここで表示されない場合ファイヤーウォールでブロックされている可能性が高い
  4. タスクトレイのAN HTTPDを右クリックし、リストからオプション一般を選択(以後オプション一般と略す)
    AN HTTPD
  5. 一般タブ内のドキュメントルートにweb用ファイルを置く保存フォルダのパスを入力。
    AN HTTPD
これでドキュメントルートに記載したフォルダ以下にindex.htmlやその他のweb用ファイルを保存すれば ローカルアクセスならhttp://127.0.0.1/で、独自ドメインやレンタルドメイン等はDDNS設定を行えば http://○○○.com/などでブラウザからアクセス可能となる。

CGIを使用するには以下も続けて設定する

CGIの設定

  1. Download PageからActivePerlをダウンロード
    ※無料版はActivePerl Community Editionです。
  2. ダウンロードしたファイルを実行してインストールし、Windowsの再起動
    1. ドキュメントルート以下のどこでもCGIを使用可能にする場合

      オプション一般の一般タブ内でCGIを実行するにチェックがあるのを確認したうえで拡張子リスト「.pl,.cgi」を選択し編集ボタンを押す
      AN HTTPD
      一般パスでも実行するにチェックをいれてOKボタンを押す
      AN HTTPD

    2. ドキュメントルート以下の指定フォルダ内だけCGIを使用可能にする場合

      上記aでの一般パスでも実行するのチェックを外し、オプション一般のエイリアスタブ内の中段にある実行パスのリストから /cgi-bin(/scriptsでもいい)を選択し編集ボタンを押す AN HTTPD
      cgiが実行可能なフォルダを指定しOKボタンを押す
      AN HTTPD

バーチャルホスト設定

  1. オプション一般で一般タブ内のバーチャルホストにチェックをいれOKボタンを押す
    AN HTTPD
  2. AN HTTPDの再起動後オプション一般に追加されたバーチャルホストタブを選択し、追加ボタンを押す
  3. ホスト名・IPアドレス・ポート・ドキュメントルートを設定しOKボタンを押す
    AN HTTPD

TOPへ
戻る