Apache

移動先: 案内, 検索

この記事は 'Apache HTTPサーバ' に言及しています

Apache HTTPサーバは、(PHPスクリプト言語とともに)Moodleを実行するソフトウェアです。代替手段(WindowsのIIS、LinuxのNginx、MacOSなど)がありますが、ApacheHTTPサーバはすべてのプラットフォームで非常に人気があることに注意してください。

Apacheのインストール

インストーラーは、ほとんどのプラットフォームで http://httpd.apache.org/download.cgi から入手できます。公式のインストール手順は次のとおりです: http://httpd.apache.org/docs/2.0/install.html 。 Linuxを実行している場合は、可能であればパッケージバージョンを使用することをお勧めします。たとえば、Debian/Ubuntuでは、次のようになります。

sudo apt-get install apache2


手順については、特定のプラットフォームのドキュメントを参照してください。 Apacheは、必要に応じてソースから簡単にビルドできます。PHPのドキュメントには、ApacheとPHPの両方を一緒にビルドする方法に関する記事が含まれていますが、そうする必要はめったにありません。

パフォーマンス

パフォーマンスの推奨を参照してください

スラッシュ引数

スラッシュ引数の使用で説明されているように、Moodleのさまざまな機能が正しく機能するには、関数 スラッシュ引数 が必要です。

オンにするには、次の行を httpd.conf、またはローカルディレクトリの .htaccess ファイルに追加します。

AcceptPathInfo On

注:ローカルのMoodleインストールフォルダで ".htaccess" を使用する場合は、最初に "httpd.conf" に "AllowOverrideDirective" を含めて有効にする必要があります。 また .htaccessファイルを使用すると、サーバのパフォーマンスが低下することに注意してください。

1and1をホスティング会社として使用している場合、上記は機能しません。解決策は、moodleディレクトリに次のコンテンツを含むphp.iniファイルを作成することです。

cgi.fix_pathinfo = 0

PHPをCGIとして使用する場合、これは既知のバグでした。

SSL

Moodleには、サイト全体またはログインページのみに対してHTTPSを有効にするオプションがあります。どちらのオプションでも、WebサーバがSSL用に構成されている必要があります。

  • config.phpの 'wwwroot' パラメーターでhttp:// を<url>https://<url>に変更すると、サイト全体のHTTPSが有効になります。
  • ログインのみのHTTPSは、'loginhttps' パラメータを設定することで有効になります。wwwrootスキーマはhttp://のままにする必要があります。

注:ログインのみのhttpsは非推奨になり、Moodle 3.4から削除されました: https://tracker.moodle.org/browse/MDL-42834

ログインのみのhttpsは、Moodle3.3以前の管理インターフェースの管理 > セキュリティ > HTTPセキュリティでボタンをチェックすることで利用できます。 (警告に注意し、以下のsslセクションを参照してください)

Moodle 2.3より前は、クライアント側のキャッシュに関するレガシー制限のため、HTTPSを介してサイト全体を実行することはお勧めしませんでした。これは、クライアントブラウザが 'Cache-Control:public' メソッドをサポートしていると仮定すると、もはや当てはまりません。これは、このバージョンのMoodleでサポートされているすべてのブラウザがサポートしています。

HTTPSを使用するには、SSL証明書を取得する必要があります。2つのオプションがあります。

  • 自己署名証明書を生成します。これは(たとえば)イントラネットでは問題ありませんが、パブリックインターネットには適していませんが、パブリックで使用する場合、証明書は信頼できないと警告されます。
  • ベンダーから証明書を購入します。驚くべき範囲の価格と付加価値サービスが利用可能です。一部のホスティング会社は無料の証明書さえ提供しています。

Debianは、自己署名証明書をインストールするための手順を提供し on their wiki、SSL用にApacheを構成するための一般的な情報を含みます。 ベンダー証明書を購入すると、通常、インストールの手順が表示されます。

基本的なApacheSSL構成は、次のように要約できます。

Listen 443
NameVirtualHost *:443
<VirtualHost *:443>
    SSLEngine On
    SSLCertificateFile /path/to/your/certificate.crt
    SSLCertificateKeyFile /path/to/your/certificate.key
    ...
</VirtualHost>


関連項目