LoginSignup
10
5

More than 5 years have passed since last update.

Nginxでphpを動かす

Posted at

環境:

  • Debian9
  • nginx/1.14.0

phpを使うページを追加する前に、静的ページ公開の設定は済んでいる想定。

phpインストール

sudo apt install php7.0-fpm
sudo apt install php
sudo apt install php-mbstring

phpの設定

sudo vi /etc/php/7.0/fpm/pool.d/www.conf

user = www-data
group = www-data
listen.owner = www-data
listen.group = www-data

これらを

user = nginx
group = nginx
listen.owner = nginx
listen.group = nginx

このように変更。
同ファイル内でphp7.0-fpm.sockのパスを確認しておく

listen = /run/php/php7.0-fpm.sock

再起動
sudo service php7.0-fpm restart

nginxの設定

nginxの設定ファイルが/etc/nginx/sites-available/sample.confにあり、
/etc/nginx/sites-enabled/sample.confにシンボリックリンクが貼ってある。
最適かどうかはわからないけど、動いた設定。

sudo vi /etc/nginx/sites-available/sample.conf
serverディレクティブ内に下記を追加

index index.html index.php;
location ~ \.php$ {
    root           /var/www/sample.example.com; #公開するファイルの場所
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include        fastcgi_params;
    fastcgi_pass unix:/run/php/php7.0-fpm.sock; #phpの設定で確認したパス
}

エラーがないか確認
sudo nginx -t

nginx再起動
sudo service nginx restart

確認

確認用phpファイル作成
sudo vi /var/www/sample.example.com/phpinfo.php
下記を入力して保存

<? phpinfo(); ?>

ブラウザからhttp://sample.example.com/phpinfo.phpにアクセスする
phpinfo()の結果が表示されれば完了

参考:

nginx + php-fpmでphpを動かす
Debian 9 (Stretch) - PHP インストール(Nginx と連携)!
CentOSにてnginxでPHPを動かす
debian 9 (stretch)でnginx+php-fpm。とりあえず動かすだけ。
php環境構築時に入れ忘れてコケるやーつ…。
How to Install Nginx with PHP + MySQL (LEMP) on Debian 9

10
5
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
5