lighttpd

Lighttpd (別名Lighty)は、 eAcceleratorAlternative PHP Cache(APC)などのPHPアクセラレータとうまく動作する、小さなメモリ使用量を備えた軽量のWebサーバーです。これはApacheやIISに代わるもので、特にリソースが少ないシステム、特にRAMに適しています。仮想プライベートサーバー(VPS)ホスティングサービスを使用する場合に理想的です。十分なリソースがあるホストでも、LightyはApacheほど高速であり、検討する価値はありません。

LighttpdはMoodleのすべての基本要件を満たし、最も一般的なウェブサービング機能を提供します。ただし、Apacheの機能を機能に置き換えることは意図されていません。あなたのニーズがMoodle以上に広がっている場合は、lighttpdの違いと制限、および必要かつ利用可能な知識とサポートのレベルに注意してください。実稼働環境にデプロイする前に、それがすべてのニーズを満たしていることを確認してください。

インストールはプラットフォームによって異なります。次の例がサーバー構成に当てはまらない場合は、 こちらの公式の指示ページを確認してください。 これらの指示に従ってPHP(できればアクセラレータ付き)とFastCGIもインストールする必要があります。

Fedora 9、10、11の例

Lighttpdは公式リポジトリの一部で、yumを使用してインストールすることができます。以下のコマンドを使用して、PHPアクセラレータのAlternative PHP Cache(APC)を含むMoodleの基本要件をすべて満たすことができます。

yumインストールlighttpd lighttpd-fastcgi mysql php php-mysql \
php-pecl-apc php-gd php-mbstring php-xmlrpc php-pdo;

それぞれのセクションの下で、Moodleルートディレクトリを指すように/etc/lighttpd/lighttpd.confを編集し、FastCGIモジュールとfastcgiモジュールセクションのコメントを外しますbin-pathがPHP FastCGI実行ファイルを指していることを確認してください。

##ロードするモジュール
#注:他のアクティブなモジュールがこれに続く場合、コンマ(、)が必要です。
#これがserver.modulesディレクティブの最後のアクティブなモジュールの場合は不要
"mod_fastcgi"、
##静的なドキュメントルートの例
server.document-root = "/home/moodle-1.9/"
#### fastcgiモジュール
fastcgi.server =( ".php" =>
                               ( "localhost" =>
                                 (
                                   "socket" => "/tmp/php-fastcgi.socket"、
                                   "bin-path" => "/ usr / bin / php-cgi"
                                 )
                               )
                            )

クライアントキャッシュの制御と有効期限は非常に柔軟です。有効期限モジュールディレクティブのコメントを外して/etc/lighttpd/lighttpd.confに以下を追加して一般的な種類の静的ファイルの有効期限制御を行い、必要に応じて日数を変更します。

##ロードするモジュール
#モジュールのロード順序は重要です。両方がアクティブな場合は、mod_expireをmod_compressの前にリストする必要があります。
#注:他のアクティブなモジュールがこれに続く場合、コンマ(、)が必要です。
#これがserver.modulesディレクティブの最後のアクティブなモジュールの場合は不要
"mod_expire"、
##クライアントキャッシュ制御部
#mod_expire  - 最初のアクセスから2日後に画像ファイルの有効期限が切れる
$ HTTP ["url"] =〜 "\。(gif | GIF | jpg | JPG | png | PNG | swf | SWF | ico | ICO)$" {
     expire.url =( "" => "アクセス2日")
}
#mod_expire  - 最初のアクセスから1日後の有効期限を含む
$ HTTP ["url"] =〜 "\。(css | CSS | js | JS)$" {
     expire.url =( "" => "アクセス1日")
}
#いくつかのバージョンのlighttpdは完全な機能のために以下のディレクティブを必要とするかもしれません、必要ならばコメントを外してください。
#etag.use-inode = "enable"
#etag.use-mtime = "enable"
#etag.use-size = "enable"
#static-file.etags = "enable"

Moodleは独自のログとレポートツールを管理しているので、それぞれのセクションの下にあるように/etc/lighttpd/lighttpd.confの以下の行をコメントアウトすることで、lighttpdのサーバーレベルのログ記録を無効にすることができます。

##ロードするモジュール
#注:他のアクティブなモジュールがこれに続く場合、コンマ(、)が必要です。
#これがserver.modulesディレクティブの最後のアクティブなモジュールの場合は不要
# "mod_accesslog"
#### accesslogモジュール
#accesslog.filename = "/ var / log / lighttpd / access_log"

サーバーのCPUサイクルに余裕がある場合は、圧縮を有効にすると、特にキャンパス外や遠隔地の学習者にとって、ネットワーク速度と受講者の応答時間が向上します。 CPUサイクルを最大化するために、HTTPとPHPのレベルで圧縮を分離する必要があります(特にマルチCPUおよびマルチコアシステムで)。最初に/etc/lighttpd/lighttpd.conf内の圧縮モジュールのコメントを外し、圧縮ファイル一時ストア用のディレクトリ(この例では/tmp/compress.tmp)を作成し、それを圧縮するファイルの種類と一緒に入力します(doそれぞれのセクションの下にあるように、PHPのMIMEタイプをここに含めないでください。

##ロードするモジュール
#注:他のアクティブなモジュールがこれに続く場合、コンマ(、)が必要です。
#これがserver.modulesディレクティブの最後のアクティブなモジュールの場合は不要
"mod_compress"
#### compressモジュール
compress.cache-dir = "/tmp/compress.tmp/"
compress.filetype =( "text / plain"、 "text / javascript"、 "text / css"、 "text / xml")

次に、/etc/php.iniを編集してPHP出力の圧縮を有効にし、最大サーバー送信サイズを増やすことを検討してください(必要に応じて、Moodle内で個々のコースを制限することはできます)。

zlib.output_compression =オン
post_max_size = 32M

最後に、 Alternative PHP Cache(APC)用の32MBの標準メモリプール設定は、Moodleではかなり少なく、/etc/php.d/apc.iniを編集して、サーバの負荷と利用可能なメモリの合計に応じて64または128に増やします。この設定を大きくすると、控えめな機器でもオペコードキャッシュ内からのページ生成速度が上がる可能性があります。

apc.shm_size = 128

参照