一笑·科奉

ubuntu 17.10 安装Nginx + php + mysql,以及增设可绑域名的虚拟站点

作者: 一笑, 写于: 2017-10-31 10:23:15

一、安装mysql

sudo apt-get -y install mysql-server mysql-client

注:

1、上边命令中的“-y”意思是不需要再次确认,如果没有“-y”,安装过程中会再确认是否安装。

2、安装时会要去输入两次需要给mysql root帐号预设成的密码,我这里输入:123456

二、安装nginx

sudo apt-get -y install nginx

安装完成之后,在浏览器中输入 http://127.0.0.1 ,即可看到如下界面:

image.png

查看nginx版本号

nginx -v

显示:

nginx version: nginx/1.12.1 (Ubuntu)

三、安装php7

注:安装前建议先输入sudo apt-get install php7后,按两下Tab键,看下php7的具体版本,如下:

image.png

如我这里显示的是php7.1,就使用如下命令安装php(nginx需要安装php-fpm来支持运行php):

sudo apt-get -y install php7.1-fpm

image.png

按照提示,再安装php-pear(只是建议,可以不安装)

sudo apt-get install php-pear

安装完成后,执行如下代码:

php -v

可以看到刚安装好的php的版本号

image.png

四、配置nginx支持php

1、编辑/etc/nginx/sites-available/default

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

image.png

将如下蓝色字前边的注释拿掉:

location ~ \.php$ {

                include snippets/fastcgi-php.conf;

        #

        #       # With php-fpm (or other unix sockets):

                fastcgi_pass unix:/var/run/php/php7.1-fpm.sock;

        #       # With php-cgi (or other tcp sockets):

        #       fastcgi_pass 127.0.0.1:9000;

}

注:红色字”php7.1-fpm“,需根据实际情况而定,可以使用cd定位到/var/run/php/目录后,用ls查看具体文件名。

cd /var/run/php/
ls

image.png

修改后,按Ctrl + O、回车、Ctrl + X,保存此文件

2、重启php-fpm和nginx

sudo service nginx reload
sudo service php7.1-fpm reload

注:php7.1根据具体版本而定

3、新增/var/www/html/index.php文件,

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

写如下代码:

<?php
phpinfo();
?>

image.png

执行后会显示:

image.png

4、安装并支持pdo_mysql

sudo apt-get install php7.1-mysql php7.1-curl php7.1-gd php7.1-mbstring

安装之前,同样可以使用按两次Tab的方式获取提示:

image.png

安装之后phpinfo()页面,即可看到如下信息,说明安装成功。

image.png

四、增加Nginx站点(可自定义域名的virtual hosting + hosts

1、创建站点目录和首页文件

创建站点目录:

mkdir /home/muir/website/test.lp/

创建站点文件:

nano /home/muir/website/test.lp/index.php

文件内容:

image.png

2、新增虚拟站点配置文件

复制site-available文件夹中的default文件,生成文件名为test.lp(可为自设的域名或其他名字皆可)

sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/test.lp

修改新生成文件test.lp

sudo nano /etc/nginx/sites-available/test.lp

删除这两行的“default_server”

listen 80 default_server;

listen [::]:80 default_server;

改成如下:

image.png

修改站点目录为刚刚创建的站点目录(/home/muir/website/test.lp,一般是/var/www/文件夹,我放在个人目录主要是开发环境文件权限考虑)

root /home/muir/website/test.lp

绑定站点域名:

server_name test.lp;

注:server_name可为已经购买的域名,此处的test.lp是虚拟域名,无法直接访问,修改访问者的hosts文件来将此域名解析到Nginx(详见第5步)。

最终结果如下:

image.png

3、启用站点(生成软链接)

解释:之所以分两个文件夹(sites-available和sites-enabled),是考虑到禁用/启用站点需要。所有虚拟站点的配置文件都放在sites-available,启用站点就用创建软链接到sites-enabled,禁用就删除sites-enabled中的软链接,方便管理。nginx默认读取sites-enabled文件夹中的站点配置。

sudo ln -s /etc/nginx/sites-available/test.lp /etc/nginx/sites-enabled/test.lp

注:以上配置是nginx version: nginx/1.12.1 (Ubuntu)此版本上的相应配置。

4、重启nginx

sudo service nginx reload

5、修改hosts

sudo nano /etc/hosts

注意:不是host或host.conf,是hosts

在最下边增加一行:

127.0.0.1    test.lp

注:test.lp是域名,可以随便写。

修改后,执行如下命令,

ping test.lp

可以看到,已经成功解析到127.0.0.1这个ip地址了。

image.png

4、增加成功啦!

image.png


分类: Linux, 浏览: 248, 评论: 0
原创文章转载请注明:转自《一笑·科奉》 原文地址:https://www.kefong.com/post/70.html