<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/install.unix.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'ja',
  ),
  'this' => 
  array (
    0 => 'install.unix.debian.php',
    1 => 'Debian GNU/Linux および関連ディストリビューションのパッケージからのインストール',
    2 => 'Debian GNU/Linux および関連ディストリビューションのパッケージからのインストール',
  ),
  'up' => 
  array (
    0 => 'install.unix.php',
    1 => 'Unix システムへのインストール',
  ),
  'prev' => 
  array (
    0 => 'install.unix.php',
    1 => 'Unix システムへのインストール',
  ),
  'next' => 
  array (
    0 => 'install.unix.dnf.php',
    1 => 'DNF を使用する GNU/Linux ディストリビューションでのパッケージからのインストール',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'ja',
    'path' => 'install/unix/debian.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="install.unix.debian" class="sect1">
 <h2 class="title">Debian GNU/Linux および関連ディストリビューションのパッケージからのインストール</h2>
 <p class="para">
  PHP はソースコードからもインストールできますが、
  <a href="http://www.debian.org/" class="link external">&raquo;&nbsp;Debian GNU/Linux</a>
  パッケージからもインストール可能です。これは、Ubuntu、Kali Linux、Linux Mint
  のような Debian ベースの他のディストリビューションにも当てはまります。
 </p>
 <div class="warning"><strong class="warning">警告</strong>
 <p class="para">
  サードパーティによるビルドは非公式であり、PHP プロジェクトによって
  直接サポートされません。発生したバグは、
  <a href="https://www.php.net/downloads.php" class="link external">&raquo;&nbsp;公式ダウンロードページ</a>
  からのビルドで再現できなければ、非公式ビルドの提供元に報告してください。
 </p>
</div>
 <p class="para">
   パッケージは、 <strong class="command">apt</strong> または <strong class="command">aptitude</strong>
   コマンドを使用してインストールできます。
   このマニュアルでは、どちらのコマンドも同じ意味で使用します。
 </p>
 <div class="sect2" id="install.unix.debian.apt">
  <h3 class="title">APT の使用</h3>
   <p class="simpara">
    まず、Apache 2 と統合する場合は
    <code class="literal">libapache2-mod-php</code>、PEAR を使う場合は
    <code class="literal">php-pear</code> などの関連パッケージが必要となることを知っておきましょう。
   </p>
   <p class="simpara">
    次に、パッケージをインストールする前にはパッケージ一覧を最新に更新しておくようにしましょう。
    これは、<strong class="command">apt update</strong> コマンドで行います。
   </p>
   <div class="example" id="install.unix.debian.apt.example">
    <p><strong>例1 Debian で Apache 2 と組み合わせるインストール例</strong></p>
    <div class="example-contents">
<div class="shellcode"><pre class="shellcode"># apt install php-common libapache2-mod-php php-cli</pre>
</div>
    </div>

   </div>
   <p class="simpara">
    APT により、Apache 2 用の PHP モジュールとその依存モジュールが自動的にインストールされます。
    インストール中に Apache を再起動する旨が表示されなかった場合は、手動で再起動する必要があります。
   </p>
   <div class="example" id="install.unix.debian.apt.example2">
    <p><strong>例2 PHP インストール後に Apache を停止・起動させる</strong></p>
    <div class="example-contents">
<div class="shellcode"><pre class="shellcode"># /etc/init.d/apache2 stop
# /etc/init.d/apache2 start</pre>
</div>
    </div>

   </div>
 </div>
 <div class="sect2" id="install.unix.debian.config">
  <h3 class="title">よりよい設定の管理</h3>
   <p class="simpara">
    ここまでのセクションでは、PHP のコアモジュールだけをインストールしました。
    おそらく、さらに
    <a href="book.mysql.php" class="link">MySQL</a> や
    <a href="book.curl.php" class="link">cURL</a>、
    <a href="book.image.php" class="link">GD</a>
    などの追加モジュールもインストールしたくなることでしょう。
    これらも <strong class="command">apt</strong> コマンドでインストールすることができます。
   </p>
   <div class="example" id="install.unix.debian.config.example">
    <p><strong>例3 追加の PHP パッケージを探す方法</strong></p>
    <div class="example-contents">
<div class="shellcode"><pre class="shellcode"># apt-cache search php
# apt search php | grep -i mysql
# aptitude search php</pre>
</div>
    </div>

   </div>
   <p class="simpara">
    パッケージのリストには、<code class="literal">php-cgi</code>、<code class="literal">php-cli</code>、
    <code class="literal">php-dev</code> などの基本的な PHP コンポーネントと多くの
    PHP 拡張モジュールを含む多数のパッケージが含まれます。
    拡張モジュールがインストールされると、それらのパッケージの依存関係を満たすために、
    必要に応じて追加のパッケージが自動的にインストールされます。
   </p>
   <div class="example" id="install.unix.debian.config.example2">
    <p><strong>例4 PHP と MySQL、cURL のインストール</strong></p>
    <div class="example-contents">
<div class="shellcode"><pre class="shellcode"># apt install php-mysql php-curl</pre>
</div>
    </div>

   </div>
   <p class="simpara">
    APT は自動的に、
    <var class="filename">/etc/php/7.4/php.ini</var> や
    <var class="filename">/etc/php/7.4/conf.d/*.ini</var>
    などの <var class="filename">php.ini</var> に適切な行を追加し、<code class="literal">extension=foo.so</code>
    といった内容が書き込まれます。しかし、これらの変更を有効にするにはウェブサーバー
    (Apache など) を再起動しなければなりません。
   </p>
 </div>
 <div class="sect2" id="install.unix.debian.faq">
  <h3 class="title">よく起きる問題</h3>
  <ul class="itemizedlist">
   <li class="listitem">
    <span class="simpara">
     PHP スクリプトがウェブサーバーで実行されない場合は、
     おそらく PHP がウェブサーバーの設定ファイルに追加されていないのでしょう。
     Debian の場合、設定ファイルは <var class="filename">/etc/apache2/apache2.conf</var>
     のようになります。詳細は Debian のマニュアルを参照ください。
    </span>
   </li>
   <li class="listitem">
    <span class="simpara">
     拡張モジュールをインストールしたのに関数が未定義だと言われたら、
     適切な ini ファイルが読み込まれているかどうかと
     インストール後にウェブサーバーを再起動したかどうかを確認しましょう。
    </span>
   </li>
  </ul>
 </div>
</div><?php manual_footer($setup); ?>