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. Akka Netty 比较

    从Akka出现背景来说,它是基于Actor的RPC通信系统,它的核心概念也是Message,它是基于协程的,性能不容置疑:基于scala的偏函数,易用性也没有话说,但是它毕竟只是RPC通信,无法适用大 ...

  2. Python-装饰器(语法糖)上下五千年和前世今生

    装饰器上下五千年和前世今生,这里我们始终要问,装饰器为何产生?装饰器产生解决了什么问题?什么样的需求推动了装饰器的产生?思考问题的时候,始终要问,为什么要这样,而不是那样或者其他样.这里我不先说,也不 ...

  3. 用ThreadLocal来优化下代码吧

    最近接手了一个老项目,看到一个很有意思的现象. 这个项目中大量的方法入参都会带上user信息,比如这样 它的意图是希望在方法内使用user的信息,但是如此大范围的传递用户信息,第一感觉就是不优雅.那有 ...

  4. 搭建实用深度学习环境(Ubuntu16.10+Theano0.8.2+Tensorflow0.11.0rc1+Keras1.1.0)

    在动手安装之前,首先要确定硬件,系统,准备安装软件的版本,确定这些软硬件之间是否相互支持或兼容.本文安装的主要环境和软件如下: Ubuntu16.10+CUDA8.0(cudnn5.1,CNMEM)+ ...

  5. Mbedtls和Opesnssl 解码x509Certificate

    最近项目需要添加解码x509Certificate功能,可以使用openssl或者mbedtls库.对这两个库的使用总结一下. 一 Openssl解码x509 Certificate 1. 初始化   ...

  6. GAN训练技巧汇总

    GAN自推出以来就以训练困难著称,因为它的训练过程并不是寻找损失函数的最小值,而是寻找生成器和判别器之间的纳什均衡.前者可以直接通过梯度下降来完成,而后者除此之外,还需要其它的训练技巧. 下面对历年关 ...

  7. Springboot集成logback,控制台日志打印两次,并且是不同的线程打印的

    背景 在搭建一个新项目的时候,从公司别的项目搞了个logback-spring.xml的配置过来,修改一下启动项目的时候发现 所有的日志都输出了两次 并且来自于不同的线程,猜测是配置重复了,但是仔细检 ...

  8. Java源码详解系列(十一)--Spring的使用和源码

    Spring 是一个一站式的 Java 框架,致力于提高我们项目开发的效率.通过 Spring,我们可以避免编写大量额外代码,更专注于我们的核心逻辑.目前,Spring 已经成为最受欢迎的 Java ...

  9. 多测师讲解a'pi自动化框架设计思想_高级讲师肖sir

    API自动化框架API自动化框架分为conf.data.utils.api.testcase.runner.report.log8个模块.conf是用来储存系统环境.数据库.邮件等的配置参数.项目的绝 ...

  10. spring boot:redis+lua实现顺序自增的唯一id发号器(spring boot 2.3.1)

    一,为什么需要生成唯一id(发号器)? 1,在分布式和微服务系统中, 生成唯一id相对困难, 常用的方式: uuid不具备可读性,作为主键存储时性能也不够好, mysql的主键,在分库时使用不够方便, ...