プロジェクト

全般

プロフィール

NginxへのPHPモジュールのインストール

  • 「Nginx(エンジンエックス)」でのPHPの利用に関するページです。

前提条件

  • CentOS 6.xでの実装を前提としています。
  • Nginxはリポジトリおよび本体を構築済みとします。

インストール

  • リポジトリを追加からfastcgiのパッケージをインストールします。
    # yum install php-fpm php
    
  • PHPは適宜モジュールを追加してください。

設定ファイル編集

  • 次の設定ファイルを編集します。(コメントアウトを外して微調整します)
    # vi /etc/php-fpm.d/www.conf 
    # ------------------------------------------------------
    server {
    ・・・中略
    ; RPM: apache Choosed to be able to access some dir as httpd
    user = nginx
    ; RPM: Keep a group allowed to write in log dir.
    group = nginx
    ・・・中略
    

    # vi /etc/nginx/conf.d/default.conf
    # ------------------------------------------------------
    server {
    ・・・中略
        location / {
            root   /usr/share/nginx/html;
            index  index.html index.htm index.php;
        }
    ・・・中略
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            root           /usr/share/nginx/html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            #fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    
  • 権限を変えておきます。既にセッションファイルがある場合は削除します。
    # rm -rf /var/lib/php/session/*
    # chown -R nginx.nginx /var/lib/php/session
    

動作確認

  • 次の設定ファイルを作成します。
    # vi /usr/share/nginx/html/index.php
    # ------------------------------------------------------
    <?php
        phpinfo();
    ?>
    
  • 権限を変更しておきます。
    # chown nginx.nginx /usr/share/nginx/html/index.php
    
  • 次のコマンドが正しく実行されるかテストします。php-fpmが先に起動するようにします。
    # service php-fpm start
    # service nginx restart
    
  • ブラウザで動作を確認します。
    http://サーバのIPアドレス/index.php
    

  • 上記のように表示されていればOK

自動起動設定

  • テストが正しく行えたら、自動起動を設定します
    # chkconfig php-fpm on
    # chkconfig --list php-fpm
    

 

戻る