各プランのWWWサーバは apache 1.3.x を使用しています。CGI、SSI、PHP4、PHP5が御利用いただけます。
各バーチャルサーバのトップディレクトリは1つめのUNIXアカウント
(末尾が00のもの)のホームディレクトリにあるサーバ名のディレクトリと
なります。
例1) お客様のサーバ名 test.que.ne.jp の場合
お客様の末尾が00であるUNIXアカウントのホームディレクトリ
(ここでは
/home/00/ttay6300 とします)直下の
test.que.ne.jp
が仮想サーバのトップディレクトリとなります。絶対パスで例を示すと
/home/00/ttay6300/test.que.ne.jp
の様なパス名となります。
ファイル /home/00/ttay6300/test.que.ne.jp/index.html
と
URL http://test.que.ne.jp/index.html
が一致します。
例2) お客様のサーバ名 www.example.com の場合
お客様の末尾が00であるUNIXアカウントのホームディレクトリ直下の
/home/00/ttay6300/www.example.com
がディレクトリが仮想サーバのトップディレクトリとなります。
webコンテンツ転送場所などの絶対パスはコントロールパネルに
ログインすることで「webコンテンツディレクトリ」として表示されますのでご確認ください。
☆
一歩進んだ使い方
UNIXアカウント単位のwebページは各ホームディレクトリの下の
「public」というディレクトリにファイルを置いて下さい。publicディレクトリは上記の仮想サーバトップディレクトリ下からシンボリックリンクを作成してあります。
例) 2つ目のアカウント tae04301 のディレクトリ
/home/00/tae04301/public/index.html
が URL
http://test.que.ne.jp/tae04301/index.html
に一致します。
仮想サーバのディレクトリ直下のUNIXアカウント名のシンボリック
リンクファイル(Windowsでの「ショートカット」に相当します)の名前を変更することによってUNIXアカウント名ではなく自由な名前でUNIXアカウント単位のwebページを公開することができます。
シンボリックリンクファイルの名前の変更はftpアプリケーションなどで行なって下さい。
ホームディレクトリにサブドメイン(お客様のドメイン名の前に何らかの名前のついたもの)名のディレクトリを作成し、その中にファイルを置いて頂くとWebからアクセスできるようになります。これにより同じドメイン内なら複数のホームページを運用できます。
例1)
お客様のドメイン名
test.que.ne.jp の場合
たとえばshop.test.que.ne.jp というサブドメインを設定するにはホームディレクトリに
/home/00/ttay6300/shop.test.que.ne.jp
という名前のディレクトリを作成して、その中にホームページのファイルを置いてください。その後 Internet Explorer や Firefox などのブラウザから
http://shop.test.que.ne.jp
にアクセスするとページが表示されます。
またサブドメインでの「シンボリックリンクファイル」を作成することで複数のサブドメインから同じホームページを表示することも可能です。たとえばtest.que.ne.jpへのシンボリックリンクファイルをwww.test.que.ne.jp というサブドメイン名で作成すれば、http://www.test.que.ne.jp にブラウザからアクセスすると
http://test.que.ne.jp と同じページが表示されます。
URLの指定でファイル名を指定しなかった場合は次の順にファイルが検索されます。
index.cgi / index.php / index.shtml
/ index.html / index.txt
その他ファイル名と拡張子の関係は次のとおりになります。
拡張子 ファイルの内容
.html/.htm HTMLファイル
.cgi CGIスクリプト
.shtml SSIスクリプト
.php PHPスクリプト
webページへのアクセスに対する認証を行なうには、アクセスを制限したいページのあるディレクトリに .htaccess または htaccess というファイルを置くことで認証設定を行ないます。htaccessファイルの書き方につきましては専門書をご参照ください。
またBASIC認証のためのパスワードを設定できるCGIプログラムを下記URLにて掲載しておりますのでご利用ください。
https://ssl.inetd.co.jp/tools/htpasswd.cgi
またBASIC認証のためのパスワードを設定するプログラムは
/usr/local/bin/htpasswd
となります。こちらを使用する場合はtelnetからご利用ください。
仮想WWWサーバのアクセスおよびエラーログは1つ目のUNIXアカウントのホームディレクトリにある logs ディレクトリ書き込まれます。
access.logは毎日午前3時前後に1日分がまとめてこのディレクトリに書き込まれます。error.logはリアルタイムに書き込まれます。
それぞれのログは7日分保管されます。
※最新の access.log / error.logを除き、古いログはzip 形式で
圧縮した形で保存されます。
※アクセスログ(access.log)の方はリアルタイムで書き込まれませんので
ご注意下さい。access.logは毎日午前3時前後に1日分がまとめて
書き込まれると同時に、ロテートされます。
実際にアクセスログがあった場合に、ログが書き込まれるのは
access.log.0〜です。
access.logはファイルとしては存在しますが、実際にログが
書き込まれるものではございません。
コントロールパネルにログインし、管理者メニュー内の登録情報変更に
「ホームページを紹介ページに登録する」という項目があります。ここで登録するとお客様のトップページが
http://www.que.ne.jp/users/
から自動的にリンクされます。
2.CGI / SSI
CGIはCGIスクリプトをweb公開ディレクトリに .cgi という拡張子で
スクリプトを置いてください。また、SSIは.shtmlという拡張子にして
ファイルを保存してください。その他特に設定する必要はありません。
CGI/SSIから利用できるおもな各プログラムは次の通りです。
sh /bin/sh
Perl5 /usr/local/bin/perl
jperl5 /usr/local/bin/jperl
sendmail /usr/local/bin/sendmail
nkf /usr/local/bin/nkf
ruby /usr/local/bin/ruby
eruby /usr/local/bin/eruby
※1 perlでプログラムに直接記述する漢字コードには「日本語EUC漢字コード」を御使用ください。ShiftJISを使用した場合には文字によって、動作しない場合があります。
※2 CGIスクリプトをFTPで転送する場合は「ASCIIモード」または「テキストモード」で転送してください。
または、転送前後に適切に改行コードの変換を行なって下さい。
※3 CGIプログラムの実行時間は20秒(CPU消費時間)に制限されます。
またメモリー使用量についても制限を行なう場合があります。
CPU消費20秒は実際の時間では40秒から1分程度です。
※個別CGIの設置等はサポート致しておりません。配布元等にお問い合わせ下さい。
2.1 CGI等の実行権限 -SuExec-
CGI / SSI各プログラムはお客様に発行したアカウントのうち、末尾が00のアカウント(主アカウント)の権限で実行されます(いわゆるSuExecです)。
※
2002年4月2日以前に御利用開始になっているお客様はSuExecではございませんのでご注意ください。
該当のお客様は末尾の「補足1」を御覧下さい。
例えばアカウント
xsie1300 の場合、CGIが作成したファイルの所有者は
xsie1300 となります。
以下、CGIを置く際の注意点を述べます。
・CGI/ディレクトリのパーミッション(モード)
CGIプログラムおよび、CGIを置くディレクトリのモードは775
もしくは755としてください。Otherユーザに対する書き込み権が
設定されている場合は実行されません。
・SSIからのプログラム/CGIの実行
SSIでは #exec
cmd/cgi=\"....\" でSSIファイルの置いてある
ディレクトリよりも上の階層にあるプログラム(/bin/dateなど)を直接実行することができません。
例えば、
/home/.../xsie1300/example.que.ne.jp/ssi/sample.shtml
/home/.../xsie1300/example.que.ne.jp/cmd1.sh
/home/.../xsie1300/example.que.ne.jp/ssi/cmd2.sh
/home/.../xsie1300/example.que.ne.jp/ssi/commands/cmd3.sh
というSSIスクリプトがあった場合、sample.shtmlからは「ssi」ディレクトリと同一階層(= /home/.../xsie1300/example.que.ne.jp/)にあるプログラム(もしくはCGI)cmd1.shは「上の階層」となりますので実行できません。同一階層となるcmd2.shおよび下の階層となるcmd3.shは実行可能です。
・SSIからのプログラム実行時の引数
SSIでは #exec
cmd/cgi でコマンドに対して引数を与えることが
できません。SSIからプログラムを引数付きで呼び出したい場合は、
同じディレクトリに別途シェルスクリプトなどを作成し、その
スクリプト中で引数を付けて目的のコマンドを実行してください。
・PHPはCGIではないため実行権限はhttpdとなります。
・主アカウント以外のアカウントホームディレクトリに置いたCGIの実行
CGIの実行はどのアカウントのディレクトリにCGIプログラムが
あっても主アカウント/グループの権限で実行されます。
これは主アカウント以外のアカウントのディレクトリにあるCGIを
実行しているお客様のみ影響を受けます。
例) 主アカウント xsie1300
アカウント xsie1301 のページ上でCGIを実行する場合
/home/00/xsie1301/public/test.cgi
はユーザxsie1300、グループxsie1300で実行されます。
そのためtest.cgiが作成したファイルの所有者はユーザが
xsie1301ではなく、xsie1300になることにご注意ください。
※ CGIプログラムの作成方法、動作の検証などは承れませんので、
一般書籍を御覧いただくか、弊社掲示版を御活用ください。