如何在Ubuntu Server16.04上安装Nginx1.10.0 PHP7 MySQL5.7


本教程以运行在vagrant上的ubuntu-16.04-server为例。


安装PHP7

sudo apt-get install php-fpm

[Optional] 通过php -v命令确认安装版本为PHP7

[Test] 在/var/www/html目录下新建index.php文件

sudo vi /var/www/html/index.php

按i进入编辑模式,左下角出现insert。使用phpinfo()输出php环境信息。

<?php
    phpinfo();
?>

按ESC键退出编辑模式,左下角insert消失。输入:wq命令保存并退出,或连续按两次Z使用快捷键保存并退出。

安装Nginx

sudo apt-get install nginx

安装完成后,Nginx默认直接启动。通过命令curl localhost查看localhost/index.nginx-debian.html页面源代码,可以确认Nginx运行正常。

或通过浏览器访问https://localhost:8080/index.nginx-debian.html

修改Nginx配置文件(/etc/nginx/sites-available/default),使其解析PHP文件。

sudo vi /etc/nginx/sites-available/default

按i进入编辑模式,左下角出现insert。 将Default server configuration下面的默认server配置替换为:

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /var/www/html;
    index index.php index.html index.htm index.nginx-debian.html;

    server_name localhost;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
    }

    location ~ /\.ht {
        deny all;
    }
}

(即:在index添加index.php默认解析主页,取消.php的location注释) 按ESC键退出编辑模式,左下角insert消失。输入:wq命令保存并退出,或连续按两次Z使用快捷键保存并退出。 [Test] 如有其它配置修改,可使用sudo nginx -t检测配置文件是否有语法错误 重新启动Nginx服务

sudo service nginx restart

[Test] 使用curl localhost即可看到phpinfo()输出PHP7运行环境的HTML源代码,或通过浏览器访问localhost

安装MySQL5.7

sudo apt-get install mysql-server

设置MySQL root用户的密码

再次输入密码进行确认

登录MySQL

mysql -uroot -p

至此,Nginx1.10.0+PHP7+MySQL5.7全部安装完毕。