3.1.1 aragoi.exeがCGIとして動作できるようにする。
3.1.2 ライブラリーファイルのディレクトリを指定する
ARAGOIのプログラムでは特別なことはありませんが、Unices版はWindowsとは動作環境の設定でいろいろと異な点があります。 OS環境が全く違うため、最初はいろいろと混乱することがあるかと思います。 Unixを日常的にお使いの方には、回りくどいところがあるでしょう。
面倒でもこのマニュアルは一度は必ず全部に目を通してください。
最後のところでWindows DOSユーザーのための簡単なUnicesのコマンド解説があります。 UnicesではDOSのコマンドプロンプトに相当する部分であるshellが異なるとコマンドもまた幾分違います。
詳しい使い方は別の参考書なりを参照してください。
このマニュアルはARAGOIDOCを補完するものです。 ARAGOIDOCも必ずご覧ください。
ARAGOIはARAGO for Internetの略称です。 ARAGOWはARAGO fort Windowsの略称です。
2.商品パケージ
CDまたはFloppy、または全てをZIPしたZIPファイルにて供給されます。
2.1. パケージ内容
UNICES.HTML このマニュアルです。 Windowws版と異なる注意点を書いてます。
ARAGOIDOC.HTML ARAGOIの基本的な仕様、動作、コマンド、関数、 CGIの動作についてのマニュアルです。
aragoi.zip ARAGOI本体をZIPしたものです。 Unices、WindowsのZIPで解凍できます。
library.zip ARAGOIで使用する、ライブラリーです。 (これ以外にglibがインストールされている必要があります。)
README 変更内容があるとき、注意点などの情報ファイルです。
RPMなどのインストールプログラムは付属しません。
3. インストール
インストールには3つのことが必要になります。
3.1 apacheのconfファイルの設定
Apacheの設定ファイルhttpd.confは /etc/httpd/httpd.conf です。 Unicesのdistributionによっては異なっていることがあります。
Unices上にインストールされたApacheのディレクトリは通常httpdとなっています。
apacheのconfファイルはDOSとは異なり、行末が\nしかありません。 そのためWindowsの環境でオープンすると、全ての業が改行されない状態で表示されます。
ARAGOWのMODIFY COMMANDで一度オープンしセーブしてください。 行末がCF/LFに変更されてもUnicesで問題はありません。
3.1.1 aragoi.exeがCGIとして動作できるようにする。
Unicesの習慣ではbinaryと実行するディレクトリ、関連ファイルをそれぞれ別のディレクトリに置くようですが、あとでどこにあるのか探すのにはうんざりすると思います。
DOS的にわかりやすいところにまとめるほうが楽かと思います。 動作すればなにをどこに置こうと、symbolic linkにしようと自由です。
cgi-binは、通常は/var/www/cgi-binです。
| ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" |
| <Directory "/var/www/cgi-bin"> AllowOverride None Options None Order allow,deny Allow from all </Directory> |
| <IfModule perchild.c> NumServers 5 StartThreads 5 MinSpareThreads 5 MaxSpareThreads 10 MaxThreadsPerChild 20 MaxRequestsPerChild 0 </IfModule> |
| SetEnv LD_LIBRARY_PATH /var/www/cgi-bin/library |
| output('Content-type: text/html; charset= Shift_JIS ',2) |
| OUTPUT('<head>') OUTPUT('<title>タイトル</title>') OUTPUT('<meta content="text/html; charset=Shift_JIS" http-equiv=Content-Type >') OUTPUT('</head>') |
| AddDefaultCharset ISO-8859-1 |
| chmode go+rwx filename |
| output('Content-type: text/html; charset= Shift_JIS ',2) output('<HTML>') output('hello') output('</HTML>') |
DISKSPACE()
上記のコマンド関数は-1を返すか、何も実行しません。
ID()
COUNTRY()
LANGUAGE()
SET DATE TO date
SET TIME TO
9. その他の注意事項
FLOCK() RLOCK() Unicesではつい最近までファイルをLockする方法がありませんでした。
現在BSD系のOSではLockは強制的なものとして動作しますが、LinuxではFlagが立っているだけで、無視してファイルを別のアプリケーションからオープンすると何事も無くオープンできます。
これはWine projectでも問題なはずです。 aragoiが動作している環境で、別の方法によってファイルを操作するとファイルは破壊されます!
例えばWindows上のARAGOWからLinux上のDBFを操作してもLockは動作しません!
SygwinはLinuxを擬似的にWindowsで動作させようとするものですが、system call は全てWindowsです。 Unices版、Windows版のどちらのaragoiも動きません!
もしWindowsでaragoiをお使いになるときはWindows版のaragoiをWindowsとしてお使いください。
apacheのconfファイルはDOSとは異なり、行末が\nしかありません。 そのためWindowsの環境でオープンすると、全ての行が改行されない状態で表示されます。
ARAGOWのMODIFY COMMANDで一度オープンしセーブしてください。 ARAGOWが行末をCR/LFに変更します。 行末がCF/LFに変更されてもUnicesで問題はありません。
Linuxをインストールするときに、Linuxになれていない方は、GUIをインストールすることをお勧めします。
不要なサービスはSecurity問題を起こす引き金になります。 serviceで不要なserviceは全て止めることをお勧めします。
Linuxをserverとしてインストールすると、gccを標準ではインストールしません。 現実的にはいろいろなserviceをあとから追加しようとすると、ソースコードをダウンロードしコンパイルする必要が出てきます。
またaragoi.exeのライブラリがglib(gccのライブラリ)を呼んでいます。 必ず最低限glibをインストールしてください。
aragoi.exeでライブラリ呼んでいる部分は小さいので、static linkしたいのですが、compilerのbugで現在は不可能です。
ftpd(FTPサーバー)は、いろいろと調べたのですが、Windowsで現在使っているものと比べると使いかっても、機能もずいぶんと差があります。
お勧めできるものはありません。 ご自分で検討してください。
aragoi.exeで呼ばれるプログラムはできる限り最短、最小時間で処理できるようにしてください。
ARAGOWで同じ機能を持つ処理ルーチンをいくつか作り、それぞれを10000回連続で廻し、どれだけの処理時間の差が出るかで調べてください。
CPUがひとつで複数の重い処理を同時に処理すれば、当然CPUの負荷は最大になります。 全てのレスポンスは当然重くなります。
重い処理が必要なときにはCPUをmultiで使用できるようにしてください。 Dualまでなら安いのですが? それ以上になるとギョッとする価格帯のようです。
その高い費用を取るか、プログラムを直すかバランスです!
Windowsのaragoi.exeでも時々、lan上の別のPCのファイルをアクセスしたいとの話がありましたが、Apacheではそのような概念自体がありません。
またUnicesではドライブという概念もありません。 それ以上にいまだに紙テープの概念でmountしなければいけないようです。
D:とかE:とかunices版のaraoi.exeでは記述できません。
Windows PCに対するattackが頻繁に起きています。 業務でお使いになるBrowser、Mail ClientはMS以外のを使用することを強くお勧めします。
いろいろとMSの最近の機能が使えなくなりますが、security上、安全な方法をおとりください。
10. Unicesの基本コマンド
大体のコマンドは command -h か --helpで簡単なヘルプを表示します。
| Unices コマンド | DOS コマンド | |
| cd | 該当するものはありません。 | home directoryに移動 |
| pwd | CD 現在のディレクトリの表示 | |
| cd path | CD PATH ディレクトリの変更 | |
| ls | DIR 現在のディレクトリにあるファイルおよびディレクトリを表示 | |
| ll | DIR option 現在のディレクトリにあるファイルおよびディレクトリを表示の属性などの詳細情報を表示 | |
| cp source destionation | COPY file | |
| mv | MOVE ファイルの移動 | |
| mkdir | MD ディレクトリの作成 | |
| chmomde | 属性の変更 | |
| zip unzip | ZIP UNZIP ファイルの解凍、ファイルのZIP | |
| rm | DELETE ファイルの削除 | |
| rmdir | ディレクトリの削除 | |
| mount | DOSには該当するものはありません。 FloppyやCDをアクセスできるようにディレクトリに割り当てる。 |
mount -t vfat /dev/fd0 /mnt/floppy |
| umount | DOSには該当するものはありません。 FloppyやCDのmount解除、このとき初めて実際にファイルがコピーされる 注意してください! |