Gorgのインストール手順
1.
導入
GorgはXMLベースのWebサイトのためのバックエンドXSLTプロセッサです。
XMLソースファイルはオンザフライで変換・出力されます。
出力ファイルやその依存ファイルはキャッシュとして保存されます。
Gorgの主な機能は下記のとおりです。
- apache、lighttpdやwebrick(ruby実装のウェブサーバ)との連携
- 効率的なキャッシュシステム
- 複数のウェブノードで同一のコンテンツを出力した場合でも、矛盾のないHTTPヘッダの生成
- ウェブサーバの圧縮機能に依らない、自前の圧縮機能(mod_gzipとして知られてる)の実装
- クライアント側のキャッシングのサポート
- XSLによるクッキーの受け入れと書き込み
- 検索エンジンの提供(サイトのインデックス作成は次のバージョン以降で実質的な更新を予定しています)
Gorgを利用することでhttp://www.gentoo.orgのローカルコピーを提供することができます。
apacheやlighttpdと連携しcgiやfastcgiスクリプトを利用することもできますし、
単体のウェブサーバとして利用することもできます。
GorgはGentoo.orgの略で、
AxKitから置き換えが必要であると感じられたGentooのサイトのために作成されました。
Gorgはx86、amd64、alpha、sparc、ppc、mipsそしてhppa上で以下のパッケージとともにテストされています。
コード表示 1.1: テスト環境 |
>=net-www/apache-2.0.55
>=www-apache/mod_fcgid-1.0.8
>=dev-lang/ruby-1.8.4
>=dev-libs/fcgi-2.4.0
>=dev-ruby/ruby-fcgi-0.8.6
>=dev-libs/libxml2-2.6.23
>=dev-libs/libxslt-1.1.15
>=dev-db/mysql-4.0.26
>=dev-ruby/ruby-dbi-0.0.21
>=dev-ruby/mysql-ruby
|
2.
Gorgのインストール
apacheとの連携、mod_fcgiを利用しないなど利用方法に応じてUSEフラグを定義します。
mysqlUSEフラグは検索エンジンを調整する場合にだけ必要です。
重要:
アーキテクチャによっては依存関係によりkeywordの指定が必要かもしれません。
その場合は必要なパッケージのkeywordの指定や、異なるアーキテクチャを受け入れることができます。
gorgはx86、amd64、alpha,sparc,ppc,mipsそしてhppaでインストールされ、テストされています。
|
コード表示 2.1: gorgのemerge |
# echo www-servers/gorg fastcgi apache -mysql >> /etc/portage/package.use
# echo www-servers/gorg -fastcgi -apache -mysql >> /etc/portage/package.use
# emerge -pv gorg
# emerge gorg
|
3.
Gorgの設定
apacheの設定
注意:
もしapacheをまったく利用しないなら、この章はとばしてください。
|
もしfastcgiを利用するなら、/etc/conf.d/apache2のAPACHE2_OPTSに-D FCGIDを設定する必要があります。
そして、提供されているサンプルファイル/etc/gorg/vhost.sampleと、
設定済みのvhost設定のapacheの設定ディレクティブを/etc/apache2/vhost.d/10_gorg.confのように統合します。
サンプル設定ファイルのコメントで内容は理解できるでしょう。
最後に、(c)cgiスクリプトを/usr/lib/ruby/site_ruby/<ruby-version>/gorg/fcgi-bin/gorg.fcgiと、
/usr/lib/ruby/site_ruby/<ruby-version>/gorg/cgi-bin/{gorg,search}.cgiを、
(f)cgiディレクトリにコピーするかシンボリックリンクを設定し、実行可能か確認してください。
search.cgiは、検索エンジンを統合して利用する場合のみコピーすればよいでしょう。
gorgの設定
サンプル設定ファイル/etc/gorg/gorg.conf.sampleを/etc/gorg/gorg.confという名前でコピーし、編集します。
コメントを参考にして、パラメータを決定しましょう。
少なくてもウェブサーバのドキュメントルートを定義することが必要です。
もしデフォルトの/etc/gorg/gorg.conf設定ファイルを利用したくなかったら、環境変数GORG_CONFに設定ファイルのパスを定義する必要があります。
重要:
キャッシュを利用するなら、設定ファイルで定義したキャッシュディレクトリに適切なアクセス権があるか確認することをおすすめします。
もしapacheを利用しているなら、apacheユーザがディレクトリにフルアクセスできる必要があるでしょう。
|
不足ファイルの取得
CSVのローカルコピーや、そのコピー、またはシンボリックリンクを提供する場合、dynディレクトリからファイルをダウンロードする必要があります。
コード表示 3.1: 不足ファイルの取得 |
$ cd /path/to/your/document/root
/htdocs $ cd dyn
/htdocs $ wget -O news-index.xml http://www.gentoo.org/dyn/news-index.xml?passthru=1
/htdocs $ cd ..
|
ブラウザで画像を表示できるようにする必要があるかもしれません。
imagesディレクトリはhtdocsの1つ上にあります。
シンボリックリンクをそこに設定するだけで、設定ができます。
コード表示 3.2: 画像フォルダへのシンボリックリンクの作成 |
/htdocs $ ln -si ../images images
/htdocs $ ls -l
drwxr-xr-x 3 neysx users 128 Sep 14 17:45 css
drwxr-xr-x 31 neysx users 744 Oct 26 00:03 doc
drwxr-xr-x 3 neysx users 544 Nov 2 16:53 dtd
drwxr-xr-x 3 neysx users 168 Nov 3 16:24 dyn
-rw-r--r-- 1 neysx users 1406 Jun 7 2003 favicon.ico
lrwxrwxrwx 1 neysx users 10 Oct 21 22:29 images -> ../images/
-rw-r--r-- 1 neysx users 190 Nov 9 2002 index.xml
drwxr-xr-x 16 neysx users 384 Apr 1 2004 main
drwxr-xr-x 17 neysx users 6960 Nov 3 15:34 news
drwxr-xr-x 8 neysx users 192 Oct 23 14:52 proj
drwxr-xr-x 4 neysx users 96 Sep 17 14:05 security
drwxr-xr-x 3 neysx users 736 Nov 2 16:40 xsl
|
ローカルのCVSにはいくつかのエントリがあるでしょう。
しかし、少なくてもそれらは最新な状態を保つ必要があります。
また、imagesディレクトリも最新の状態を保つ必要があります。
4.
Gorgの起動
単体のウェブサーバとして起動
gorgを起動する最も簡単な方法はgorgを実行することです。
実行すると以下のようなメッセージが出力されるでしょう。
コード表示 4.1: gorgの実行 |
$ gorg
Starting the Gorg web server on port 8008
Hit Ctrl-C or type "kill 31479" to stop it
|
http://localhost:8008をブラウザで指定すれば、目的のサイトが見れるはずです。
apacheと連携して起動
あなたのワークステーションにインストールしているならば、
apacheを再起動(/etc/init.d/apache2 restart)し、http://localhostを表示します。
もしfastcgiサーバを利用している場合、top -u apacheでそれらを参照してください。
起動しない場合は単体のウェブサーバとして起動(gorgを実行)してみてください。
もしそれでも起動しない場合は、/etc/gorg/gorg.confを確認して下さい。
単体では起動した場合、apacheの設定とログを確認して下さい。
このドキュメントの内容は、他のものが明示されない限りは、
CC-BY-SA-2.5ライセンスです。
Gentoo Name and Logo Usage Guidelines (日本語訳)が適用されます。
|