サーバー設定 · 1 min read · Jan 01, 2026
OpenSUSE 12.1でApache2とPHP5-FPMを使用する
OpenSUSE 12.1でApache2とPHP5-FPMを使用する
バージョン 1.0
著者: Falko Timme
Twitterでフォローしてください
このチュートリアルでは、OpenSUSE 12.1サーバーにPHP5(PHP-FPMを通じて)とMySQLサポートを持つApache2ウェブサーバーをインストールする方法を示します。PHP-FPM(FastCGIプロセスマネージャー)は、あらゆる規模のサイト、特に忙しいサイトに役立つ追加機能を備えた代替PHP FastCGI実装です。
これがあなたにとって機能する保証はありません!
1 前提条件
このチュートリアルでは、ホスト名server1.example.comとIPアドレス192.168.0.100を使用します。これらの設定はあなたの環境によって異なる場合があるため、適宜置き換えてください。
2 追加リポジトリの有効化
後でmod_fastcgiをインストールする必要がありますが、これはデフォルトでは有効になっていないリポジトリにあります。次のようにして有効にできます:
zypper --gpg-auto-import-keys addrepo --name "Apache HTTPサーバーのサードパーティモジュール (Apache_openSUSE_12.1)" http://download.opensuse.org/repositories/Apache:/Modules/Apache_openSUSE_12.1/ apache-third-party-12.13 MySQL 5のインストール
MySQLをインストールするには、次のようにします:
yast2 -i mysql mysql-client mysql-community-server次に、MySQLのシステム起動リンクを作成し(システムが起動するたびにMySQLが自動的に起動するように)、MySQLサーバーを起動します:
systemctl enable mysql.service
systemctl start mysql.serviceMySQLインストールを保護するには、次を実行します:
mysql_secure_installationこれでいくつかの質問が表示されます:
server1:~ # mysql_secure_installation
NOTE: このスクリプトのすべての部分を実行することは、すべてのMySQLサーバーにおいて推奨されます! 各ステップを注意深くお読みください!
MySQLにログインして保護するためには、rootユーザーの現在のパスワードが必要です。 MySQLをインストールしたばかりで、まだrootパスワードを設定していない場合、パスワードは空白になりますので、ここではそのままEnterを押してください。
rootの現在のパスワードを入力してください(なしの場合はEnter): <– ENTER
OK、パスワードが正常に使用されました、次に進みます…
rootパスワードを設定することで、適切な認証なしに誰もMySQLのrootユーザーにログインできないようにします。
rootパスワードを設定しますか? [Y/n] <– Y
新しいパスワード: <– 希望するMySQL rootパスワードを入力
新しいパスワードを再入力してください: <– そのパスワードを確認
パスワードが正常に更新されました!
特権テーブルを再読み込み中..
… 成功!
デフォルトでは、MySQLインストールには匿名ユーザーがあり、誰でもユーザーアカウントを作成せずにMySQLにログインできます。 これはテスト用にのみ意図されており、インストールを少しスムーズにするためのものです。 本番環境に移行する前に、これらを削除する必要があります。
匿名ユーザーを削除しますか? [Y/n] <– Y
… 成功!
通常、rootは「localhost」からのみ接続を許可されるべきです。 これにより、誰かがネットワークからrootパスワードを推測できないようにします。
リモートからのrootログインを禁止しますか? [Y/n] <– Y
… 成功!
デフォルトでは、MySQLには「test」という名前のデータベースがあり、誰でもアクセスできます。 これはテスト用にのみ意図されており、本番環境に移行する前に削除する必要があります。
テストデータベースとそのアクセスを削除しますか? [Y/n] <– Y
- テストデータベースを削除中…
… 成功! - テストデータベースの特権を削除中…
… 成功!
特権テーブルを再読み込みすることで、これまでに行ったすべての変更が即座に反映されることを保証します。
特権テーブルを今すぐ再読み込みしますか? [Y/n] <– Y
… 成功!
クリーンアップ中…
すべて完了! 上記のすべてのステップを完了した場合、あなたのMySQLインストールは今や安全であるはずです。
MySQLをご利用いただきありがとうございます!
server1:~ #
これでMySQLの設定が保護されているはずです。
4 Apache2のインストール
Apache2はOpenSUSEパッケージとして利用可能ですので、次のようにインストールできます:
yast2 -i apache2次に、システムを設定してApacheを起動時に開始するようにします…
systemctl enable apache2.service… そしてApacheを起動します:
systemctl start apache2.service
ApacheのデフォルトのドキュメントルートはOpenSUSEでは/srv/www/htdocs/であり、設定ファイルは/etc/apache2/httpd.confです。追加の設定は/etc/apache2/conf.d/ディレクトリに保存されています。
5 PHP5のインストール
PHP-FPMとApacheのmod_fastcgiモジュールを通じてApache2でPHP5を動作させることができます。次のようにインストールします:
yast -i apache2-mod_fastcgi php5-fpmPHP-FPMを開始する前に、/etc/php5/fpm/php-fpm.conf.defaultを/etc/php5/fpm/php-fpm.confに名前変更します:
mv /etc/php5/fpm/php-fpm.conf.default /etc/php5/fpm/php-fpm.confPHPのセッションディレクトリの権限を変更します:
chmod 1733 /var/lib/php5次に、/etc/php5/fpm/php-fpm.confを開きます…
vi /etc/php5/fpm/php-fpm.conf… error_logを/var/log/php-fpm.logに変更し、pm.min_spare_serversとpm.max_spare_serversのコメントを外します:
| [...] error_log = /var/log/php-fpm.log [...] pm.min_spare_servers = 5 [...] pm.max_spare_servers = 35 [...] |
次に、php-fpmのシステム起動リンクを作成し、起動します:
systemctl enable php-fpm.service
systemctl start php-fpm.servicePHP-FPMはポート9000でFastCGIサーバーを実行するデーモンプロセスです。次の出力で確認できます:
netstat -tapnserver1:~ # netstat -tapn
アクティブなインターネット接続(サーバーおよび確立されたもの)
プロトコル 受信キュー 送信キュー ローカルアドレス 外部アドレス 状態 PID/プログラム名
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 2329/nginx
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1204/sshd
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 2511/php-fpm.conf)
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2059/mysqld
tcp 0 0 192.168.0.100:22 192.168.0.199:1632 ESTABLISHED 1284/0
tcp 0 0 :::22 :::* LISTEN 1204/sshd
server1:~ #次に、次のApacheモジュールを有効にします…
a2enmod actions
a2enmod fastcgi
a2enmod alias… mod_php5を無効にします…
a2dismod php5… そしてApacheを再起動します:
systemctl restart apache2.service新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。