1.安装nginx

yum -y install gcc pcre-devel  openssl-devel

tar xf nginx-1.16.1.tar.gz

cd nginx-1.16.1/

./configure --with-http_ssl_module

make  && make install

2.安装php

下载
    http://www.php.net/downloads.php

yum -y install libxml2 libxml2-devel

tar xf php-7.2.34.tar.gz

cd php-7.2.34/

./configure --enable-fpm --with-mysql

make && make install

创建配置文件,并将其复制到正确的位置.

cp php.ini-development /usr/local/php/php.ini

cp /usr/local/etc/php-fpm.d/www.conf.default /usr/local/etc/php-fpm.d/www.conf

cp sapi/fpm/php-fpm /usr/local/bin

cp /usr/local/etc/php-fpm.conf.default  /usr/local/etc/php-fpm.conf

将php.ini文件中的配置项cgi.fix_painfo设置为0 。需要着重提醒的是,如果文件不存在,则阻止nginx将请求发送到后端的PHP-FPM模块,以避免遭受恶意脚本注入的攻击.

vim /usr/local/php/php.ini

771    cgi.fix_pathinfo=0

在启动服务之前,需要修改php-fpm.conf配置文件,

vim  /usr/local/etc/php-fpm.conf

include=/usr/local/etc/php-fpm.d/*.conf   #最后一行  修改安装路径

启动

/usr/local/bin/php-fpm

配置Nginx使其支持PHP应用

vim /usr/local/nginx/conf/nginx.conf

修改默认的Location块,使其支持.php文件:

location / {

    root   html;

    index  index.php index.html index.htm;

}

下一步配置来保证对于.php文件的请求将被传送到后端的PHP-fpm模块,取消默认的PHP配置块的注释,并修改为下面的内容:

location ~* \.php$ {

    fastcgi_index   index.php;

    fastcgi_pass    127.0.0.1:9000;

    include         fastcgi_params;

    fastcgi_param   SCRIPT_FILENAME    $document_root$fastcgi_script_name;

    fastcgi_param   SCRIPT_NAME        $fastcgi_script_name;

}

重启Nginx.

/usr/local/nginx/sbin/nginx -s stop

/usr/local/nginx/sbin/nginx

创建测试文件.

rm -rf /usr/local/nginx/html/index.html

echo "<?php phpinfo(); ?>" >> /usr/local/nginx/html/index.php

验证

curl localhost

3.安装mysql

下载

https://dev.mysql.com/downloads/mysql/

解压并创建数据目录

tar xf mysql-5.7.32-el7-x86_64.tar.gz

mv mysql-5.7.32-el7-x86_64 /usr/local/mysql

groupadd  mysql

useradd -r -s /sbin/nologin -g mysql  mysql -d /usr/local/mysql

cd /usr/local/mysql

chown -R mysql. *

mkdir /var/lib/mysql

chown -R mysql /var/lib/mysql

cd /usr/local/mysql

编译

bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/var/lib/mysql

拷贝启动文件

cp /usr/local/mysql/support-files/mysql.server  /etc/init.d/mysqld

修改配置文件

vim /etc/init.d/mysqld

basedir=/usr/local/mysql

datadir=/var/lib/mysql
vi /etc/my.cnf

创建日志路径

mkdir /var/log/mariadb

touch  /var/log/mariadb/mariadb.log

chown -R mysql. /var/log/mariadb

启动

/etc/init.d/mysql start

--登陆

# mysql -uroot -p

 --如果出现:-bash: mysql: command not found

  --就执行: # ln -s /usr/local/mysql/bin/mysql /usr/bin

--修改密码

mysql> set password=password('123456');

--设置root账户的host地址(修改了才可以远程连接)

mysql>grant all privileges on *.* to 'root'@'%' identified by '123456';

mysql>flush privileges;

部署LNMP环境的更多相关文章

  1. 【转载】Centos系统快速部署LNMP环境

    PHP语言在Linux系统上运行的时候,需要在Linux系统上部署相应的Nginx.MySQL.PHP等环境,只有将这些环境参数都设置好,PHP相关应用程序才可正常运行,部署环境的方法有很多种,可手动 ...

  2. 手动部署LNMP环境(CentOS 7)

    手动部署LNMP环境(CentOS 7) 一.修改 yum 源 [root@localhost ~]# rpm -Uvh https://dl.fedoraproject.org/pub/epel/e ...

  3. docker中基于centos镜像部署lnmp环境 php7.3 mysql8.0 最新版

    Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源. Docker可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的Linux机器上 ...

  4. 十九.部署LNMP环境、构建LNMP平台、地址重写

    proxy client web1 web2   1.部署LNMP环境 1.1 部署nginx(前面已部署过) 1.2 部署mariadb ]# yum -y install mariadb mari ...

  5. 高级运维(三):部署Lnmp环境、构建Lnmp平台、地址重写

    一.部署LNMP环境 目标: 安装部署Nginx.MariaDB.PHP环境 1> 安装部署Nginx.MariaDB.PHP.PHP-FPM: 2> 启动Nginx.MariaDB.FP ...

  6. 手动编译部署LNMP环境(CentOS7.5+Nginx-1.18.0+MySQL-5.7.30+PHP-7.4.14)

    在平时运维工作中,经常需要用到LNMP应用框架.LNMP环境是指在Linux系统下,由Nginx + MySQL + PHP组成的网站服务器架构. 可参考前面的文章: 如何在CentOS 7上搭建LA ...

  7. ansible-playbook通过github拉取部署Lnmp环境

    1. 配置服务器初始化  1.1) 关闭防火墙和selinux 1 [root@test-1 ~]# /bin/systemctl stop firewalld 2 [root@test-1 ~]# ...

  8. 通过yum在CentOS7部署LNMP环境(Centos7.4+Nginx1.12+mariadb5.5.56+PHP7.0)

    LNMP环境 CentOS Linux release 7.4.1708 PHP 7.0.25 nginx version: nginx/1.12.2 mariadb: 5.5.56-MariaDB ...

  9. centos-6.5安装部署LNMP环境

    安装部署前,确保安装了gcc和gcc-c++ 系统信息: [root@zww ~]# cat /etc/redhat-release CentOS release 6.5 (Final) [root@ ...

  10. Zabbix部署-LNMP环境

    原文发表于cu:2016-05-05 参考文档: LNMP安装:http://www.osyunwei.com/archives/7891.html 一.环境 Server:CentOS-7-x86_ ...

随机推荐

  1. 秋天的第一份“干货” I Referer 防盗链,为什么少了个字母 R?

    Referer 为什么叫 Referer?它代表什么意思?在诸多防盗链竞争中它有什么优势? 今天,在聊 Referer 防盗链之前,先来聊聊我们在现实生活中常常碰到的推荐人(Referrer)信息. ...

  2. NoActionBar主题下如何添加OptionsMenu

    菜单无法显示 为了不显示标题栏,所以主题使用了 NoActionBar,这也直接导致选项菜单无处显示 解决方案 添加一个ToolBar,自定义标题栏 <androidx.appcompat.wi ...

  3. Leetcode PHP题解--D125 107. Binary Tree Level Order Traversal II

    val = $value; } * } */ class Solution { private $vals = []; /** * @param TreeNode $root * @return In ...

  4. 嵌入式arm-linux mips-linux 交叉编译GDB,结合vscode图形化调试使用,coredump定位段错误

    第一部分:使用GDB GDB源码下载路径:http://ftp.gnu.org/gnu/gdb/ 遇到的主要难点: 选择合适的GDB源码版本 我的mips-linux交叉编译器不支持C++11特性,所 ...

  5. Mysql中 int(3) 类型的含义

    注意:这里的(3)代表的并不是存储在数据库中的具体的长度,以前总是会误以为int(3)只能存储3个长度的数字,int(11)就会存储11个长度的数字,这是大错特错的. 其实当我们在选择使用int的类型 ...

  6. Mac系统下的zip压缩包解压到Windows下出现乱码的解决方法

    环境变量 环境变量是具有特殊名字的一个特定对象,包含了一个或多个应用程序运行所需的信息.(例如PATH,可执行程序的搜索路径,当要求系统运行一个程序,而没告诉系统它的具体路径时,系统就要在PTAH值的 ...

  7. SetDlgItemInt(函数详解)

    参考:https://blog.csdn.net/for_cxc/article/details/51799194 SetDlgItemInt(hwnd, IDC_TEXT, FREQ_INIT, F ...

  8. C++中try&catch

    参考:   https://blog.csdn.net/xueluowutong/article/details/81257654 在c++中,可以直接抛出异常之后自己进行捕捉处理,如:(这样就可以在 ...

  9. JVM内存布局(又叫Java运行时数据区)

    JVM 堆中的数据是共享的,是占用内存最大的一块区域. 可以执行字节码的模块叫作执行引擎. 执行引擎在线程切换时怎么恢复?依靠的就是程序计数器. JVM 的内存划分与多线程是息息相关的.像我们程序中运 ...

  10. DX12龙书 02 - DirectXMath 库中与向量有关的类和函数

    0x00 需要用到的头文件 #include <DirectXMath> #include <DirectXPackedVector.h> using namespace Di ...