「Apache」の版間の差分

提供:MoodleDocs
移動先:案内検索
編集の要約なし
 
 
(2人の利用者による、間の34版が非表示)
1行目: 1行目:
作成中です - [[利用者:Mitsuhiro Yoshida|Mitsuhiro Yoshida]] 2007年5月2日 (水) 02:46 (CDT)
{{Moodleのインストール}}
'''この記事は 'Apache HTTPサーバ' '''に言及しています


When most people refer to '''Apache''' they are talking about the "Apache HTTP Server Project". In fact Apache is really the "Apache Software Foundation" which hosts a long list of projects of which the HTTP server is just one, albeit the best known.
Apache HTTPサーバは、(PHPスクリプト言語とともに)Moodleを実行するソフトウェアです。代替手段(WindowsのIIS、LinuxのNginx、MacOSなど)がありますが、ApacheHTTPサーバはすべてのプラットフォームで非常に人気があることに注意してください。


The Apache HTTP Server enables web pages to be published on the internet (or an intranet or even on a single test machine). The [[PHP]] scripting language, in which Moodle is developed, is tightly integrated with the Apache HTTP Server. A web server is a required component of a Moodle installation. There are two distinct developments of the Apache HTTP Server, version 1 and version 2. Although version 2 should have replaced version 1, the architectures are so different that they both continue to be supported. Either are fully supported by PHP and Moodle.
== Apacheのインストール==
インストーラーは、ほとんどのプラットフォームで http://httpd.apache.org/download.cgi から入手できます。公式のインストール手順は次のとおりです: http://httpd.apache.org/docs/2.0/install.html 。 Linuxを実行している場合は、可能であればパッケージバージョンを使用することをお勧めします。たとえば、Debian/Ubuntuでは、次のようになります。
<pre>
sudo apt-get install apache2
</pre>


The Apache HTTP Server Project describes itself thus:


"The Apache HTTP Server Project is an effort to develop and maintain an open-source HTTP server for modern operating systems including UNIX and Windows NT. The goal of this project is to provide a secure, efficient and extensible server that provides HTTP services in sync with the current HTTP standards.
手順については、特定のプラットフォームのドキュメントを参照してください。 Apacheは、必要に応じてソースから簡単にビルドできます。PHPのドキュメントには、ApacheとPHPの両方を一緒にビルドする方法に関する記事が含まれていますが、そうする必要はめったにありません。


Apache has been the most popular web server on the Internet since April 1996. The November 2005 Netcraft Web Server Survey found that more than 70% of the web sites on the Internet are using Apache, thus making it more widely used than all other web servers combined."
==パフォーマンス==


== Installing Apache ==
[[パフォーマンスの推奨]]を参照してください


Usually Apache is installed alongside PHP and [[MySQL]] in a combination known as AMP, see [[Installing AMP]] for details.
==スラッシュ引数==


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


Apache can be tuned to make pages load faster by specifying how the browser should cache the various page elements. How to do this varies slightly between OSes but there are two basic steps
オンにするには、次の行を ''httpd.conf''、またはローカルディレクトリの ''.htaccess'' ファイルに追加します。


# Install and enable mod_rewrite - refer to documentation or man pages
  AcceptPathInfo On
# Add this code to the virtual server config file within the section for the root directory (or within the .htaccess file if AllowOverrides is On):
  <IfModule mod_expires.c>
  ExpiresActive On
  ExpiresDefault "access plus 1 seconds"
  ExpiresByType text/html "access plus 1 seconds"
  ExpiresByType image/gif "access plus 120 minutes"
  ExpiresByType image/jpeg "access plus 120 minutes"
  ExpiresByType image/png "access plus 120 minutes"
  ExpiresByType text/css "access plus 60 minutes"
  ExpiresByType text/javascript "access plus 60 minutes"
  ExpiresByType application/x-javascript "access plus 60 minutes"
  ExpiresByType text/xml "access plus 1 seconds"
</IfModule>


The effect is to make everything stay in the cache except HTML and XML, which change dynamically. It's possible to gain a several hundred percent decrease in load times this way
注:ローカルのMoodleインストールフォルダで ".htaccess" を使用する場合は、最初に "httpd.conf" に "AllowOverrideDirective" を含めて有効にする必要があります。
また .htaccessファイルを使用すると、サーバのパフォーマンスが低下することに注意してください。


More info: [http://www.metaskills.net/blog/heuristics/sysadmin/how-to-control-browser-caching-with-apache-2 www.metaskills.net]
1and1をホスティング会社として使用している場合、上記は機能しません。解決策は、moodleディレクトリに次のコンテンツを含むphp.iniファイルを作成することです。


== 関連情報 ==
cgi.fix_pathinfo = 0


* [http://httpd.apache.org/ The Apache HTTP Server Project homepage]
PHPをCGIとして使用する場合、これは既知のバグでした。
* [http://en.wikipedia.org/wiki/Apache_HTTP_Server Wikipedia article on the Apache HTTP Server]


== SSL ==


[[Category:管理者]]
Moodleには、サイト全体またはログインページのみに対してHTTPSを有効にするオプションがあります。どちらのオプションでも、WebサーバがSSL用に構成されている必要があります。
[[Category:開発者]]
 
* 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は、自己署名証明書をインストールするための手順を提供し [https://wiki.debian.org/Self-Signed_Certificate 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>
 
 
==関連項目==
 
* [http://httpd.apache.org/ ApacheHTTPサーバプロジェクトのホームページ]
* [http://en.wikipedia.org/wiki/Apache_HTTP_Server ApacheHTTPサーバに関するWikiペディアの記事]
* [http://httpd.apache.org/docs/2.0/misc/perf-tuning.html 公式ホームページのApache PerformanceTuningの記事]
* [https://els.earlham.edu/cayaraa/weblog/1468.html MoodleをSSLで動作させる]
* [http://www.krufix.de/ ローカルネットワークとSSLプロキシ経由のインターネットで同じMoodleを2回使用する](ドイツ語)


[[en:Apache]]
[[en:Apache]]
<!--[[pl:Apache]]-->
[[de:Apache]]
[[es:Apache]]

2021年2月8日 (月) 05:23時点における最新版

この記事は '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>


関連項目