Centos7下搭建LNMP环境

环境 vmawre虚拟机centos  地址192.168.32.200 

window11下的cmd链接   

目录

nginx

Mysql

 PHP

 配置Nginx

 配置MySQL

 配置PHP

 测试访问

nginx

  1. 关闭防火墙
    1. 运行systemctl status firewalld命令,查看当前防火墙的状态。

      Centos7下搭建LNMP环境_第1张图片

      • 如果防火墙的状态参数是inactive,则防火墙为关闭状态。
      • 如果防火墙的状态参数是active,则防火墙为开启状态。
      • 关闭防火墙。如果防火墙为关闭状态可以忽略此步骤。
        • 如果您想临时关闭防火墙,需要运行以下命令:
          systemctl stop firewalld

          说明 临时关闭防火墙后,如果Linux实例重启,则防火墙将会自动开启。

        • 如果您想永久关闭防火墙,需要依次运行以下命令:
          1. 关闭防火墙。
            systemctl stop firewalld
          2. 实例开机时,禁止启动防火墙服务。
            systemctl disable firewalld

2.关闭SELinux

  1. 运行命令getenforce,验证SELinux状态。

    返回状态如果是enforcing,表明SELinux已开启。

  2. 选择临时关闭或者永久关闭SELinux。
    • 执行命令setenforce 0临时关闭SELinux。
    • 永久关闭SElinux。
      1. 运行以下命令,编辑SELinux的config文件。
        vi /etc/selinux/config
      2. 找到SELINUX=enforcing,按i进入编辑模式,将参数修改为SELINUX=disabled

        Centos7下搭建LNMP环境_第2张图片

      3. 修改完成后,按下键盘Esc键,执行命令:wq,保存并退出文件。
      4. 重启ECS实例。
        shutdown -r now
      5. 重启后,运行命令getenforce,验证SELinux状态为disabled,表明SELinux已关闭。

3.安装Nginx     

wget http://nginx.org/download/nginx-1.8.1.tar.gz

 安装Nginx相关依赖

yum install -y gcc-c++
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel

 解压Nginx 1.8.1安装包,然后进入Nginx所在的文件夹

tar zxvf nginx-1.8.1.tar.gz
cd nginx-1.8.1

编译源码

./configure \
 --user=nobody \
 --group=nobody \
 --prefix=/usr/local/nginx \
 --with-http_stub_status_module \
 --with-http_gzip_static_module \
 --with-http_realip_module \
 --with-http_sub_module \
 --with-http_ssl_module
make && make install

 进入Nginx的sbin目录,然后启动Nginx

cd /usr/local/nginx/sbin/
./nginx

 使用浏览器访问IP。我的IP是192.168.32.200

出现如下图所示的页面,表示Nginx已成功安装并启动。

Centos7下搭建LNMP环境_第3张图片

 设置开机自启nginx,在rc.local增加启动代码

vi /etc/rc.local
/usr/local/nginx/sbin/nginx

Centos7下搭建LNMP环境_第4张图片

Mysql

 1.运行以下命令更新YUM源。

rpm -Uvh  http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

2.运行以下命令安装MySQL。

yum -y install mysql-community-server --nogpgcheck

3.运行以下命令查看MySQL版本号。 

mysql -V

 返回结果如下所示,表示MySQL安装成功。

 4.运行以下命令启动MySQL。

systemctl start mysqld

5.依次运行以下命令设置开机启动MySQL 

systemctl enable mysqld
systemctl daemon-reload

 PHP

1.运行以下命令添加epel源。

yum install \
https://repo.ius.io/ius-release-el7.rpm \
https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

2.运行以下命令添加Webtatic源。

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

3.查看PHP版本

php -v

 

 配置Nginx

1.备份nginx配置文件

cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.bak

2. 打开Nginx配置文件 

vi /usr/local/nginx/conf/nginx.conf

 添加或修改location /配置信息。

        location / {
            index index.php index.html index.htm;
        }

 Centos7下搭建LNMP环境_第5张图片

3.添加或修改location ~ .php$配置信息。

        #添加下列信息,配置Nginx通过fastcgi方式处理您的PHP请求。
        location ~ .php$ {
            root /usr/local/nginx/html;    #将/usr/local/nginx/html替换为您的网站根目录,本文使用/usr/share/nginx/html作为网站根目录。
            fastcgi_pass 127.0.0.1:9000;   #Nginx通过本机的9000端口将PHP请求转发给PHP-FPM进行处理。
            fastcgi_index index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include fastcgi_params;   #Nginx调用fastcgi接口处理PHP请求。
        }

Centos7下搭建LNMP环境_第6张图片

 4.运行以下命令启动Nginx服务

cd /usr/local/nginx/sbin/
./nginx

 Centos7下搭建LNMP环境_第7张图片

 配置MySQL

1.运行以下命令查看/var/log/mysqld.log文件,获取并记录root用户的初始密码

grep 'temporary password' /var/log/mysqld.log

2.其中ARQTRy3+n8*W为MySQL的初始密码。在下一步重置root用户密码时,会使用该初始密码。

3. 运行以下命令配置MySQL的安全性。

mysql_secure_installation

为MySQL设置新密码。

The existing password for the user account root has expired. Please set a new password.

New password: #输入新密码。长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号。特殊符号包含()` ~!@#$%^&*-+=|{}[]:;‘<>,.?/

Re-enter new password: #确认新密码。
The 'validate_password' plugin is installed on the server.
The subsequent steps will run with the existing configuration
of the plugin.
Using existing password for root.

Estimated strength of the password: 100 #返回结果包含您设置的密码强度。
Change the password for root ? ((Press y|Y for Yes, any other key for No) :Y #您需要输入Y以确认使用新密码。

#新密码设置完成后,需要再次验证新密码。
New password:#再次输入新密码。

Re-enter new password:#再次确认新密码。

Estimated strength of the password: 100
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) :Y #您需要输入Y,再次确认使用新密码。

输入Y删除匿名用户。

Remove anonymous users? (Press y|Y for Yes, any other key for No) :Y
Success.

 输入Y禁止使用root用户远程登录MySQL

Disallow root login remotely? (Press y|Y for Yes, any other key for No) :Y
Success.

 输入Y删除test库以及用户对test库的访问权限。

Remove test database and access to it? (Press y|Y for Yes, any other key for No) :Y
 - Dropping test database...
Success.

 - Removing privileges on test database...
Success.

输入Y重新加载授权表。 

Reload privilege tables now? (Press y|Y for Yes, any other key for No) :Y
Success.

All done!

 配置PHP

1.新建并编辑phpinfo.php文件,用于展示PHP信息

vim <网站根目录>/phpinfo.php

ps:我的路径是这个/usr/local/nginx/html,你们的可能不一样,得看弄清楚,在填写 

2.文件里面写入这个代码

 按ESC。输入:wq,保存文件。

3.运行以下命令启动PHP-FPM

systemctl start php-fpm

 测试访问 

网站输入http://192.168.32.200/phpinfo.php

192.168.32.200是我的网站,这个得改成你们 

出现以下的界面就是访问成功了。

Centos7下搭建LNMP环境_第8张图片

参考链接

如何手动在ECS实例上搭建LNMP环境(CentOS 7)_云服务器 ECS-阿里云

你可能感兴趣的:(Linux,运维,linux,centos)