
前提としては、
OSは「ubuntu16.04TLS」で、OSインストール直後で、ユーザーアカウント作成後は何もしていない状態。
まず、パッケージ類を最新化する。
1 2 3 |
#>sudo apt update #>sudo apt upgrade #>sudo reboot |
でubuntuを再起動。
2017年03月15日現在、
ubuntu(16.04LTS)の公式パッケージをhttp://packages.ubuntu.com/で検索して、確認すると、nginx (1.10.0-0ubuntu0.16.04.4)となっていて、
nginxの公式ページを見ると、nginx-1.11.10が最新版のようだ。
どっちがいいのか正直言ってよく分からないけど、パッケージ版の方が無難かなと思うので、こっちをインストールする。
1 |
#>sudo apt install nginx |
これで終わり。
このあと、ブラウザで「localhost」にアクセスすると、あっさりwebサーバーが立ち上がっており、以下のホーム画面が表示される。
次に、PHP7.0をインストールする。
ubuntuパッケージで提供されているのは、php7.0 (7.0.15-0ubuntu0.16.04.4) (2017年03月15日現在)。
1 |
#>sudo apt install php7.0 |
(これだけでも、Nginx上でphp-fpmで動かすための関連パッケージはインストールできているようだ。)
一応、もう一回、以下でパッケージ更新をしておく。
1 2 |
#>sudo apt update #>sudo apt upgrade |
「apt upgrade」の結果、「0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.」とメッセージが出たのでとりあえずOK。
それで、Nginxでphp7.0が動くようにする。viで「/etc/nginx/sites-available/」のdefaultを編集する。
1 |
#>sudo vi /etc/nginx/sites-available/default |
defaultファイルを以下の編集して保存、
- 「index部分」にindex.phpを追加
- コメントアウトされている「location ~ \.php$部分」の#を以下のように削除
(今回は、php7.0-fpmを使うので、「fastcgi_pass unix:/run/php/php7.0-fpm.sock;」部分のコメント#を外す。)
1 2 3 4 5 6 7 8 9 10 11 |
# Add index.php to the list if you are using PHP index index.php index.html index.htm index.nginx-debian.html; location ~ \.php$ { include snippets/fastcgi-php.conf; # # # With php7.0-cgi alone: # fastcgi_pass 127.0.0.1:9000; # # With php7.0-fpm: fastcgi_pass unix:/run/php/php7.0-fpm.sock; } |
一応、以下のコメントアウトも#を削除して、.htaccessなどの外部アクセスを禁止しておく。
1 2 3 |
location ~ /\.ht { deny all; } |
一応、設定が正しいのかを以下コマンド確認する。
1 2 3 4 |
sudo nginx -t //以下のようなメッセージが出たらOK!! nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful |
変更した設定を反映させるため、以下のコマンドで再起動。
1 2 |
#>sudo systemctl restart php7.0-fpm #>sudo systemctl reload nginx |
「/var/www/html/」フォルダにinfo.phpを以下内容で作成して、PHPが稼働していることを確認する。
1 2 |
<?php phpinfo(); |
http://localhost/info.phpにアクセスして、以下のようにphpinfo()が動けばOK!!