腾讯云部署 LNMP 教程(含分区和格式化)

本篇参考腾讯云官方文档:https://cloud.tencent.com/document/product/213/2125

 

一、创建安全组:

1、云服务器 - 安全组 - 新建规则 - 入站规则的入站规则设置开通80端口。如下:

  来源:0.0.0.0/0 - 允许网络上任何位置对绑定的云服务器进行访问

  协议端口:TCP:80 - 开通80

  ——或者直接开放所有端口。

完成之后,我们就会有两个规则。如下:

 

2、点击云主机 - 更多 - 配置安全组,勾选放通全部端口的选项。然后就可以通过IP访问了。

 

 

二、分区和格式化(注意:腾讯云不支持对系统盘进行分区,系统盘就不要管它了。)

1、输入命令fdisk -l查看您的数据盘信息。本示例中,有一个 54 GB 的数据盘(/vdb)需要挂载。(fdisk -ldf -h 都为拆看数据盘信息命令,但在没有分区和格式化数据盘之前,使用df -h 命令无法看到数据盘。)

 

————此时vdb是没有进行分区的,所有没有分区的信息(Device)。

 

2、对数据盘进行分区。按照界面的提示,依次操作:输入fdisk /dev/vdb(对数据盘进行分区),回车;输入n(新建分区),回车;输入p(新建扩展分区),回车;输入1(使用第 1 个主分区),回车;输入回车(使用默认配置);再次输入回车(使用默认配置);输入wq(保存分区表),回车开始分区。

这里以创建 1 个分区为例,开发者也可以根据自己的需求创建多个分区。

 

 

3、使用fdisk -l命令,即可查看到,新的分区 vdb1 已经创建完成。

 

4、新分区vdb1的格式化 --->>>

mkfs.ext3 /dev/vdb1

 

5、挂载新分区:使用以下命令创建 mydata 目录并将分区挂载在该目录下:

mkdir /mydata
mount /dev/vdb1 /mydata

 

 6、使用df-h挂载查看挂载

 

7、设置启动自动挂载
如果希望云服务器在重启或开机时能自动挂载数据盘,必须将分区信息添加到 /etc/fstab中。
使用以下命令添加分区信息:

echo '/dev/vdb1 /mydata ext3 defaults 0 0' >> /etc/fstab

 

8、使用以下命令查看:

cat /etc/fstab

 

出现如图最下方框选的 vdb1 信息则说明添加分区信息成功。

 

 

 

三、 安装nginx

1、自动安装 Nginx。输入命令:

yum install nginx
service nginx start
chkconfig --levels 235 nginx on

 

2、启动 Nginx 服务。输入命令:

service nginx restart

centOS7之下重启nginx是:

/bin/systemctl restart  nginx.service

 

 

3、命令行测试 Nginx 服务是否正常运行。输入命令:wget http://127.0.0.1 。

  若服务正常,显示结果如下。

--2013-02-20 17:07:26-- http://127.0.0.1/
Connecting to 127.0.0.1:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 151 [text/html]
Saving to: `index.html'
100%[===================================>] 151 --.-K/s in 0s 
2013-02-20 17:07:26 (37.9 MB/s) - `index.html' saved [151/151]

 

4、浏览器中测试 Nginx 服务是否正常运行。访问 CentOS 云服务器公网 IP。
若服务正常,显示结果如下。

该网页的 html 位置为:/usr/share/nginx/html。可以直接删除。

 

 

四、安装MySQL

1、安装 MySQL/mariaDB。

输入命令:

yum install mariadb mariadb-server    //centOS7以后的版本,下载mariadb

或者:

yum install mysql mysql-server mysql-devel    //centOS6.8前会下载mysql,7之后会下载mariaDB

注意,此时下载下来的是mariaDB。(centOS7没有继承mysql,所以下载下来的是mariadb,所以可以直接使用yum install mariadb mariadb-server来下载mariadb)。

 

2、启动 mariadb 服务。输入命令: 

systemctl start mariadb

 

3、设置密码等配置:

mysql_secure_installation

————然后就会有各种设置。

设置完之后,可以使用以下语句进行测试:

mysql -uroot -p123456
show variables like 'character_set_%';

 

 4、设置开机自启动:systemctl enable mariadb

 5、假设登录了,退出的三种方式:

mysql > exit;
mysql > quit;
mysql > \q;

 6、由于设置了root只能本地登录,所以得创建新用户进行任意主机登录。

CREATE USER 'username'@'%' IDENTIFIED BY 'password'; 

  然后赋予用户权限:(只能root用户赋予,新用户没有权限。)

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, FILE, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, CREATE VIEW, EVENT, TRIGGER, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EXECUTE ON *.* TO 'username'@'%' REQUIRE NONE WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;

 

权限的意思如下:

 7、刷新权限:

flush privileges

8、重启mariaDB:

systemctl restart mariadb.service

 

附加知识:

查看所有用户:

SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

查看某个用户权限:

show grants for 'username'@'%';

 

 

 

 

五、安装PHP

1、安装 PHP 。输入命令进行安装:

yum install php lighttpd-fastcgi php-cli php-mysql php-gd php-imap php-ldap
php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-mssql php-snmp php-soap

2、安装所需组件使 PHP 支持 MySQL、FastCGI 模式。

yum install  php-tidy php-common php-devel php-fpm php-mysql

 

 

六、Nginx 与 PHP-FPM 集成

1、启动 PHP-FPM。输入命令启动 PHP-FPM 服务:service php-fpm start 。

————在使用以上命令的时候,出现了提示:

Redirecting to /bin/systemctl start  php-fpm.service
——估计是使用的是Centos7或者 Fedora高版本。启用服务变化了。执行命令使用:
/bin/systemctl start php-fpm.service

 

2、输入命令查看 PHP-FPM 默认配置:cat /etc/php-fpm.d/www.conf |grep -i 'listen ='

  返回结果为:listen = 127.0.0.1:9000,表明 PHP-FPM 默认配置的监听端口为 9000,只需修改配置,将 PHP 解析的请求转发到 127.0.0.0:9000 处理即可。

3、修改 Nginx 配置。

  输入命令查找 Nginx 配置文件:

nginx -t

  使用vi命令修改该配置文件:

 

 

在配置文件中找到以下片段,修改黄色部分:

server {
    listen       80;
    root   /www/shua/public/;
    server_name  shua.besunway.com;
    
    #文件识别
    location / {
        index  index.html index.php index.htm;
    }
    
    # 路由重写
    location / {
            if (!-e $request_filename) {
            rewrite  ^(.*)$  /index.php?s=/$1  last;
            break;
        }
    }
    
    # 请求转交给PHP
    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index   index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
    
    # 设置图片过期时间
    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
        expires 30d;
    }
    
    # 设置js和css缓存时间
    location ~ .*\.(js|css)?$
    {
        expires 1h;
    }    

}

 

 

4、 查看配置是否正确。输入命令:cat /etc/nginx/nginx.conf 。

5、配置完成后,重启服务。输入命令:service nginx restart 。

 

  

七、环境配置验证

用以下命令在 web 目录下创建 index.php:

vim /usr/share/nginx/html/index.php

写入如下内容:

<?php
echo "<title>Test Page</title>";
echo "hello world";
?>

在浏览器中,访问 CentOS 云服务器公网 IP ,查看环境配置是否成功。如果页面可以显示“hello world”,说明配置成功。

 

 

八:配置文件位置: 

虚拟主机配置:/etc/nginx/conf.d/

nginx日志文件:/var/log/nginx/

nginx配置文件位置:/etc/nginx/nginx.conf

 

 

 

 常用重启命令:

// 重启nginx
/bin/systemctl restart  nginx.service
service nginx restart

// 重启mariadb
systemctl restart mariadb.service

 

 

 

 

 

 

 

 

 

 

 

 

 

—————占位符

 

posted @ 2017-10-23 17:37  小寒1206  阅读(545)  评论(0编辑  收藏  举报