在百度云Ubuntu|在百度云Ubuntu 服务器(BCC)上搭建 nginx + mysql + php-fpm 环境

前言:无论是在百度云还是阿里云Linux系统服务器都大同小异。推荐一片文章传送门。这篇文章主要说nginx,用apache的可以到传送门去寻找。注意,ubuntu用apt管理工具,centos是yum管理工具; 一、本地连接你的服务器
购买流程就不说了,我们从你购买完成浏览器并创建好实例

在百度云Ubuntu|在百度云Ubuntu 服务器(BCC)上搭建 nginx + mysql + php-fpm 环境
文章图片
image.png
此时你通过ip是无法在地址栏访问的, 需要先连接服务器配制环境
远程控制 Linux 类型的系统的服务器,比如 ubuntu 系统的服务器,一般不像 Windows 服务器那样,使用图形界面的远程控制。我们需要使用命令行工具,远程连接到服务器,然后使用命令去控制服务器。Windows 用户可以使用 Putty,Mac 用户可以使用系统自带的终端工具。然后用 ssh 命令,连接到你的服务器。像这样:

ssh root@218.244.147.196

@ 左边的 root 是连接时使用的用户的名字,@ 右边的数字是你的服务器的 IP 地址。这行命令的意思就是,使用 root 用户,登录到 218.244.147.196 这台服务器上。回车以后,会提示你输入 root 用户的密码(这个密码你可以通过实例自行修改)。
二、添加新用户
添加新用户并分配 Root 权限
为了安全,我们可以单独创建一个平时操作服务器的用户,并且给这个用户分配可以使用 Root 的权限,也就是如果需要 Root 权限,可以在命令的前面加上 sudo 获取到 Root 用户的权限。
添加新用户 比如添加一个名字是ngh 的用户,可以这样:
adduser nhg

设置密码 为用户设置密码:
passwd nhg

分配 Root 权限 让我们新创建的用户拥有 Root 用户的权限,执行:
gpasswd -a nhg wheel

把ngh 这个用户名换成你自己的用户名。
用新用户登录服务器
ssh ngh@218.244.147.196

三、安装nginx
1.更新源
sudo apt-get update

2.安装nginx
sudo apt-get install nginx

3.检查是否安装成功 使用服务器的 IP 地址,若出现Welcome To Nginx则证明安装成功。

在百度云Ubuntu|在百度云Ubuntu 服务器(BCC)上搭建 nginx + mysql + php-fpm 环境
文章图片
20150911144903
配置 nginx 虚拟主机 安装完 nginx 以后,第一件想到的事应该就是去创建虚拟主机,虚拟主机允许我们在同一台服务器上运行多个网站,我们可以为不同的域名绑定不同的目录,访问这个域名的时候,会打开对应目录里面的东西。下面来看一下为 nginx 配置虚拟主机。先进入到 nginx 配置文件目录:
cd /etc/nginx/conf.d

创建一个新的配置文件,比如我要为 nhg.com这个主机名创建一个虚拟主机,可以这样:
sudo vim nhg.com.conf

把下面的配置代码放到这个配置文件里:
server { listen80; server_namengh.com; root/var/www/html/nhg.com; indexindex.php index.html; location / { try_files $uri $uri/ /index.php?$query_string; }location ~ \.php$ { fastcgi_pass unix:/run/php/php7.0-fpm.sock; ##这块儿注意 fastcgi_index index.php; include fastcgi.conf; } }

上面这个配置文件支持一些的 PHP 应用,比如 WordPress,Drupal,Laravel。第一个 location 区块可以让 PHP 应用支持地址的重写功能,第二个 Location 设置了让虚拟主机可以去处理 PHP 的请求。注意这里用了 include 命令,包含进来一个 fastcgi.conf 文件,你要确定这个文件存在。
【在百度云Ubuntu|在百度云Ubuntu 服务器(BCC)上搭建 nginx + mysql + php-fpm 环境】你也可能会找到 fastcgi_params 这个文件,如果没有 fastcgi.conf 就把 fastcgi_params 这个文件包含进来,并且在处理 php 的那个 location 区块里再添加一条配置:
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

server_name 就是主机名,也就是跟这个虚拟主机绑定在一块儿的域名,我事先把 nhg.com 指向了服务器,这个虚拟主机就是为它准备的,所以,server_name 后面的东西就是 nhg.com 。紧接着 server_name 下面可以是一个 root,就是这个虚拟主机的根目录,也就是网站所在的目录。比如我们要把 nhg.com这个网站的文件放在 /var/www/html/nhg.com 下面,那么这个 root 就是这个路径。
然后去掉 location / 里面的 root 这行代码。再在 index 后面加上一种索引文件名,也就是默认打开的文件,这里要加上一个 index.php ,这样访问 nhg.com 就可以直接打开 root 目录下面的 index.php 了。稍后我们再去安装 php 。
保存一下,按 esc ,输入 :wp(保存并退出)。现在虚拟主机应该就可以使用了。主机的域名是 nhg.com,访问它的时候,打开的是 /var/www/html/nhg.com 这个目录里面的东西,你可以在这个目录下放点东西。
重启 nginx 或者重新加载 nginx 可以让配置文件生效。
sudo service nginx restart

现在,打开浏览器,输入你为虚拟主机设置的域名,看看是否能打开你指定的目录里的东西。
你可以将你的代码放到git,直接git到你的服务器;
四、PHP 7
安装php7.0
$ apt-get -y install php7.0-fpm php-mysql

PHP fix_pathinfo 潜在安全漏洞修复,在/etc/php/7.0/fpm/php.ini中找到
; cgi.fix_pathinfo=1

改为
cgi.fix_pathinfo=0

重启 php
$ sudo systemctl restart php7.0-fpm

在/etc/nginx/sites-available/default 中添加配置
server { listen 80; listen [::]:80; # listen [::]:443 ssl http2; # listen 443 ssl http2; # include ssl.conf; # ssl_certificate /path/to/crt; # ssl_certificate_key /path/to/key; root /var/www/server_domain_or_IP; index index.html index.htm index.php; server_name server_domain_or_IP; location / { try_files $uri $uri/ =404; }location /phpmyadmin { index index.php; }location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.0-fpm.sock; // 这个 }location ~ /\.ht { deny all; } }

重启Nginx
$ sudo systemctl restart nginx

测试PHP是否已完成安装配置,编辑/var/www/html/info.php
$ vi /var/www/html/info.php

添加内容

然后访问IP
出现PHP信息则成功
安装 PHP 扩展 为了可以正常运行一般的 PHP 应用,你需要再安装一些其它的 PHP 扩展,通常你在安装 PHP 应用,比如 WordPress,Drupal,Laravel 的时候,都会提示你缺少的 PHP 扩展。下面是一些常用的 PHP 扩展:
sudoapt-get install php70u-gdphp70u-mysqlnd php70u-pdo php70u-mcrypt php70u-mbstring php70u-json php70u-opcache php70u-xml -y

五、安装MySQL
apt-get -y install mysql-server mysql-client

安装时候会出现紫色背景的界面设置MySQL的root账户的密码,建议设置一个复杂的密码
安装完MySQL之后最好运行一次安全配置向导,通过该向导可以检查root账户的密码、禁止MySQL的远程访问、移除匿名用户和测试的数据表等等
安全配置向导命令
mysql_secure_installation

按提示操作即可
安装 phpMyAdmin
通过 phpMyAdmin 可以方便地通过 web 操作 MySQL 数据库,这里同样能用 apt-get 来安装它
apt-get -y install phpmyadmin

安装过程中它会有两个选项问你的web服务器是 Apache 还是 libhttpd ,这里我们两个都不是,随便选一个。
安装好之后,phpMyAdmin 位于 /usr/share/phpmyadmin 目录里,我们配置 nginx 时候只要将一个网站根目录指向这里就可以访问 phpMyAdmin 了,或者我们创建软连接
ln -s /usr/share/phpmyadmin//var/www/phpmyadmin

则配制路径到/var/www/phpmyadmin
重启Nginx
sudo service nginx restart

出现sql标准界面则成功;
你可以解析几个二级三级域名作为数据库的域名;
纠错连接
CentOS7中使用yum安装Nginx的方法
centos 7 升级 git 版本(通过安装 ius 源的方式

    推荐阅读