1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317
|
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision: 1.6 $ -->
<sect1 id="install.apache">
<title>Apacheサーバ</title>
<para>
本節では、PHPをApacheにインストールする際の注意事項とコツについて
説明します。<link linkend="install.apache.unix">Unix</link> 版と
<link linkend="install.apache.windows">Windows</link> 版の両方につ
いて説明します。
</para>
<sect2 id="install.apache.unix">
<title>Unix上でApacheにPHPをインストールする手順</title>
<para>
以下の手順の8行目で<command>configure</command> に追加する引数を
<link linkend="install.configure">configureのオプションの全て
</link>から選択可能です。ここではバージョン番号が意図的に省略
されています。'xxx'の部分を貴方が使用するファイルに対応するものに
置き換えてください。
</para>
<example id="install.apache.unix.longer">
<title>
PHP 4インストール手順 (Apache共有モジュール版)
</title>
<screen>
<![CDATA[
1. gunzip apache_xxx.tar.gz
2. tar xvf apache_xxx.tar
3. gunzip php-xxx.tar.gz
4. tar xvf php-xxx.tar
5. cd apache_xxx
6. ./configure --prefix=/www --enable-module=so
7. make
8. make install
9. cd ../php-xxx
10. ./configure --with-mysql --with-apxs=/www/bin/apxs
11. make
12. make install
インストール後にconfigureオプションを変更したくなった場合は
最後の3つの手順を繰り返してください。新しいモジュールを有効
にするにはapacheを再起動するだけです。apacheの最コンパイルは
必要ありません。
12. cp php.ini-dist /usr/local/lib/php.ini
PHPオプションを設定するために.iniファイルを編集して下さい。このファ
イルを他の場所に置きたい場合は、手順8でオプション
--with-config-file-path=/path を使用して下さい。
13. httpd.conf または srm.conf ファイルで以下の行がコメントアウト
されていないかどうか(つまり有効になっているかどうか)確認して
ください。
AddType application/x-httpd-php .php
LoadModule php4_module libexec/libphp4.so
ここで好きな拡張子を選択できます。.php は単に推奨されるだけです。
.htmlを選択することも可能でし、旧バージョンとの互換のために.php3
を使用することも出来ます。
LoadModule文に記述されているパスはあなたのシステムにインストール
されているPHPモジュールを指している必要があります。上記の例はこの
手順に沿ってインストールを行った場合のパスです。
14. 通常の手順により Apache サーバを起動して下さい。(HUPまたはUSR1シグ
ナルを使用してリロードするのではなく)サーバを停止してから再起動す
る必要があります。
]]>
</screen>
</example>
<para>
Apache のインストールやUNIXの種類によりサーバを停止し、再起動する
方法はいくつもあります。複数のApache/UNIXの組合せについてサーバを
再起動する際に使用される典型的な方法を以下に示します。
<literal>/path/to/</literal> を使用するシステムのアプリケーション
へのパスに置き換えて読んで下さい。
<informalexample>
<screen>
<![CDATA[
1. 複数の Linux および SysV から派生したもの:
/etc/rc.d/init.d/httpd restart
2. apachectl スクリプトを使用する方法:
/path/to/apachectl stop
/path/to/apachectl start
3. (OpenSSL を使用している場合、) apachectl と同様に httpdctl および
httpsdctl を使用する方法:
/path/to/httpsdctl stop
/path/to/httpsdctl start
4. mod_sslまたは他のSSLサーバを使用している場合、マニュアルでstopと
startを行うかもしれません。:
/path/to/apachectl stop
/path/to/apachectl startssl
]]>
</screen>
</informalexample>
apachectl および http(s)dctl の実行ファイルの位置はシステムにより
異なります。システムが <literal>locate</literal> または
<literal>whereis</literal> または <literal>which</literal> をサポー
トしている場合、サーバ制御用プログラムを見つけるために使用するこ
とが可能です。
</para>
<para>
PHPをApache用にコンパイルする別の例を以下に示します。
<informalexample>
<programlisting>
<![CDATA[
./configure --with-apxs --with-pgsql
]]>
</programlisting>
</informalexample>
</para>
<para>
これにより、共有ライブラリ <filename>libphp4.so</filename> が作成
されます。Apacheの<filename>httpd.conf</filename>ファイルにおいて
LoadModuleを使用してApacheにこのライブラリをロードすることが可能
です。上の例では、PostgreSQLサポートがこの
<filename>libphp4.so</filename>ライブラリに埋め込まれます。
</para>
<para>
<informalexample>
<programlisting role="shell">
<![CDATA[
./configure --with-apxs --with-pgsql=shared
]]>
</programlisting>
</informalexample>
</para>
<para>
この例でも Apache用<filename>libphp4.so</filename> 共有ライブラリ
が作成されます。しかし、共有ライブラリ
<filename>pgsql.so</filename> も作成されます。この共有ライブラリ
は、<filename>php.ini</filename> ファイルのextensionディレクティ
ブまたはスクリプト内で<function>dl</function>関数を使用して明示的
にロードすることが可能です。
</para>
<para>
<informalexample>
<programlisting>
<![CDATA[
./configure --with-apache=/path/to/apache_source --with-pgsql
]]>
</programlisting>
</informalexample>
</para>
<para>
これにより、<filename>libmodphp4.a</filename> ライブラリと
<filename>mod_php4.c</filename> およびいくつかの付属ファ
イルが作成され、Apacheにソースツリーのディレクトリ
<literal>src/modules/php4</literal> にコピーされます。続いて、
<literal>--activate-module=src/modules/php4/libphp4.a</literal>
を指定してApacheをコンパイルして下さい。これにより、Apache構築シ
ステムは、<filename>libphp4.a</filename> を作成し、
<filename>httpd</filename> バイナリに静的にリンクされます。
PostgreSQL サポートはこの<filename>httpd</filename>バイナリに直接
インクルードされるため、最終的な結果は、Apache全体とPHP全体を含む
単一の<filename>httpd</filename>バイナリになります。
</para>
<para>
<informalexample>
<programlisting>
<![CDATA[
./configure --with-apache=/path/to/apache_source --with-pgsql=shared
]]>
</programlisting>
</informalexample>
</para>
<para>
上と同じですが、最終的な<filename>httpd</filename>に
PostgreSQLサポートを直接インクルードする代わりに、共有ライブラリ
<filename>pgsql.so</filename>をファイル
<filename>php.ini</filename>または<function>dl</function>により直
接的にPHPにロードすることが可能です。
</para>
<para>
異なったPHPの構築法を選択する際、各方法の利点と欠点を考慮する必要
があります。共有オブジェクトとして構築する場合、Apacheと分割して
コンパイルすることが可能で、PHPを追加または変更する際に全体を再コ
ンパイルする必要がありません。PHPをApacheに(静的に)組み込む場合に
は、PHPはより高速にロード/実行することが可能です。詳細な情報につ
いては、Apacheの<ulink url="&url.apachedso;">DSOサポートのWebペー
ジ</ulink>を参照下さい。
</para>
</sect2>
<sect2 id="install.apache.windows">
<title>Windows上のApache 1.3.xへのPHPインストールの詳細</title>
<simpara>
PHP を Windows 上の Apache 1.3.x で動作させるには、2種類の方法が
あります。一つは、CGIバイナリ (php.exe) を使用する方法、もう一つ
は Apache モジュールdll を使用する方法です。どちらの場合も Apache
サーバを停止し、PHP と組み合むように Apache を設定するために
<literal>srm.conf</literal> または <literal>httpd.conf</literal>
を編集します。
</simpara>
<simpara>
Apache用にPHPを設定する手順にはいくつかありますが、この手順は入門
者にも使用可能な程簡単です。設定用ディレクティブに関する詳細につ
いては、Apacheのドキュメントを参照下さい。
</simpara>
<para>
<link linkend="install.windows.manual">マニュアルインストール手順
</link>のセクションに説明されたようにPHPパッケージをunzipで
c:\php\に展開した場合、CGIバイナリを設定するには以下の行をApache
の設定ファイルに追加する必要があります。
<itemizedlist>
<listitem>
<simpara>
<literal>
ScriptAlias /php/ "c:/php/"
</literal>
</simpara>
</listitem>
<listitem>
<simpara>
<literal>
AddType application/x-httpd-php .php .phtml
</literal>
</simpara>
</listitem>
<listitem>
<simpara>
<literal>
Action application/x-httpd-php "/php/php.exe"
</literal>
</simpara>
</listitem>
</itemizedlist>
サーバを再起動することを忘れないで下さい。再起動は、例えば、
<literal>NET STOP APACHE</literal> の後に
<literal>NET START APACHE</literal> を実行します。
</para>
<para>
If you would like to use PHP as a module in Apache,
be sure to move <filename>php4ts.dll</filename> to
the windows/system (for Windows 9x/Me) or winnt/system32
(for Windows NT/2000/XP) directory, overwriting any older file.
Then you should add the following two lines to you Apache
conf file:
<itemizedlist>
<listitem>
<simpara>
<literal>
LoadModule php4_module c:/php/sapi/php4apache.dll
</literal>
</simpara>
</listitem>
<listitem>
<simpara>
<literal>
AddType application/x-httpd-php .php .phtml
</literal>
</simpara>
</listitem>
</itemizedlist>
</para>
<note>
<simpara>
In Apache 1.3.22 for Windows, the default configuration file
(<filename>httpd.conf-dist-win</filename>) has
a <literal>ClearModuleList</literal> directive included
by default. If this directive is used, it is required
to put an <literal>AddModule mod_php4.c</literal> to
the <literal>AddModule</literal> list, as else PHP will
not be registered as an Apache module.
</simpara>
</note>
<simpara>
ソースコードハイライト機能を使用するには、PHPスクリプトファイルを
作成し、次のようなコードを加えてください。<literal><?php
show_source ("original_php_script.php"); ?></literal>
<literal>original_php_script.php</literal> の部分を
ソースを見たいと思うファイルの名前に置き換えてください。
(これがこの機能を使用するための唯一の手段です。)
</simpara>
<note>
<simpara>
Windows版のApache においては、"c:\directory\file.ext" のようなパ
ス設定におけるバックスラッシュは、"c:/directory/file.ext"のよう
に全てスラッシュに変換する必要があります。
</simpara>
</note>
</sect2>
</sect1>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->
|