微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Day11 LNMP搭建

LNMP搭建

L指Linux,

N指Nginx

M一般指MysqL,也可以指MariaDB,

P一般指PHP,也可以指Perl或Python

1.搭建LNMP准备

1.1关闭selinux,selinux是Linux 内核模块,也是 Linux 的一个安全子系统

setenforce 0 #临时关闭selinux getenforce #查看临时关闭情况

#永久关闭,重启电脑 sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config

1.2关闭防火墙

systemctl stop firewalld systemctl disable firewalld

1.3补充:

如果开机启用Nginx提示如下:

Nginx: [emerg] bind() to 0.0.0.0:80 Failed (98: Address already in use)

这是因为80端口被占用

使用命令:fuser -k 80/tcp 解除占用

2.搭建LNMP架构

2.1使用官方仓库安装Nginx

  • 安装前:yum revmove Nginx -y ##卸载旧版本Nginx

  • 调整yum源优先级

    • rpm -qa yum-plugin-priorities

    • yum install yum-plugin-priorities -y

  • 配置yum源(目标从Nginx官方下载如果不配置上面的优先级,认从centos的官方下载.)

2.2使用第三方扩展源安装PHP7.1

  • 配置PHP安装源

    • yum install epel-release -y

  • 安装PHP及相关插件

    • 卸载旧版本的PHP

      • rpm -e $(rpm -qa|grep PHP) rpm -qa|grep PHP

    • 安装PHP及相关插件(网络下载安装)

    • 安装PHP7版本的软件(本地安装)

      • tar xf PHP.zip

      • yum localinstall PHP/*.rpm -y

    • 配置PHP-fpm用户Nginx的运行用户保持一致

      • sed -i '/^user/c user = www' /etc/PHP-fpm.d/www.conf

      • sed -i '/^group/c group = www' /etc/PHP-fpm.d/www.conf

      • egrep "^user|^group" /etc/PHP-fpm.d/www.conf #查看已配置的权限

    • 启动PHP-fpm,并将其加入开机自启

      • netstat -lntup|grep PHP-fpm #查看是否启动PHP

2.3安装Mariadb/MysqL数据库

3.LNMP架构配置及整体测试实战----搭建博客

3.1配置虚拟主机配置文件

  • cd /etc/Nginx/conf.d

  • gzip default.conf

  • vim 01_blog.etiantian.org.conf

    •  server {
               server_name blog.etiantian.org;
               listen 80;
               root /data/blog;
               index index.PHP index.html;
       ​
               location ~ \.PHP$ {
                   root /data/blog;
                   fastcgi_pass   127.0.0.1:9000;
                   fastcgi_index  index.PHP;
                   fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                   include        fastcgi_params;
               }
       }
  • Nginx -t

  • systemctl reload Nginx

3.2创建站点目录

  • 创建授权blog目录

    • mkdir -p /data/blog

    • chown -R www.www /data/blog

  • 测试PHP服务

    • cd /data/blog/

    • cat >test.PHP<<EOF <?PHP PHPinfo(); ?> EOF

    • cat test.PHP

      <?PHP PHPinfo(); ?>

  • 测试PHP连接MysqL

    • vim /data/blog/test_MysqL.PHP

       <?PHP
               $servername = "localhost";
               $username = "root";
               $password = "oldboy123";
               // 创建连接
               $conn = MysqLi_connect($servername, $username, $password);
               // 检测连接
               if (!$conn) {
                   die("Connection Failed: " . MysqLi_connect_error());
               }
                  echo "PHP连接MysqL数据库成功,oldboy安全8期";
       ?>
    • 主机访问http://10.0.0.7/test_mysql.php

  • 测试

    • index.html #验证Nginx虚拟主机静态是否成功.

      echo oldboy >index.html

      curl 10.0.0.7

    • test.PHP #访问.PHP的程序,看看Nginx是否后抛给PHP,是否解析成功.

      curl 10.0.0.7/test.PHP

    • test_MysqL.PHP #访问.PHP的程序,看看Nginx是否后抛给PHP,是否解析成功.是否连接数据库成功.

      curl 10.0.0.7/test_MysqL.PHP

  • 域名测试

    • windows中的hosts

      路径:C:\Windows\System32\drivers\etc\hosts 添加内容:10.0.0.7 blog.etiantian.org

    • linux中的hosts

      路径:vim /etc/hosts

      添加内容:10.0.0.7 blog.etiantian.org

  • 安装wordpress软件

    • cd /data/blog #提前上传或下载latest-zh_CN.zip

    • unzip latest-zh_CN.zip #解压

    • mv wordpress/* #将wordpress文件夹下的文件移动到/data/blog中

    • chown -R www.www /data/blog #授权

  • 域名访问和地址访问都可以了

  • 创建是数据库

    • 方法1:浏览器访问blog.etiantian.org

    • 方法2:Linux访问数据库

      • 创建数据库用户: [root@oldboy blog]# MysqL -uroot -poldboy123  #登录

      • MariaDB [(none)]> create database blog;  #创建库

      • MariaDB [(none)]> grant all on blog.* to blog@'localhost' identified by 'oldboy123';  授权库

      • MariaDB [(none)]> flush privileges;   #写入存储

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐