Linux CentOs下安装lnmp
1.下载源码包
以root目录为例:
cd ~
# 下载安装包
wget http://nginx.org/download/nginx-1.17.2.tar.gz # nginx
wget https://www.php.net/distributions/php-7.3.7.tar.gz # php
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.16-2.el7.x86_64.rpm-bundle.tar # mysql
# 解压
tar zxvf mysql-8.0.16-2.el7.x86_64.rpm-bundle.tar
tar zxvf php-7.3.7.tar.gz
tar zxvf nginx-1.17.2.tar.gz
# 安装cmake
yum install -y gcc gcc-c++ make automake
# 下载 cmake
wget https://github.com/Kitware/CMake/releases/download/v3.15.1/cmake-3.15.1.tar.gz
tar zxvf cmake-3.15.1.tar.gz
cd cmake-3.15.1
./configure --prefix=/usr/local/cmake
make && make install
创建 cmake的软连接
ln -s /usr/local/cmake/bin/cmake /usr/bin/cmake
- 软连接 软链接仅仅包含所链接文件的路径名,因此能链接目录文件,也可以跨越文件系统进行链接。但是,当原始文件被删除后,链接文件也将失效。
- 硬链接 可以将它理解为一个“指向原始文件inode的指针”,系统不为它分配独立的inode和文件。所以,硬链接文件与原始文件其实是同一个文件,只不过是不同的名字而已。我们每添加一个硬链接,该文件的inode链接数就会增加1;而且只有当该文件的inode连接数为0时,才算彻底将它删除。
2.安装
mysql 参考链接
# 卸载自带的 Mariadb
rpm -qa|grep mariadb # 查看当前系统自带的Mariadb
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
# 创建用户组
groupadd mysql
# 创建mysql用户,属于mysql组
useradd -g mysql mysql
# 安装
# 安装依赖
yum install -y libaio rpm -ivh mysql-community-common-8.0.16-2.el7.x86_64.rpm --nodeps --force # 安装common
rpm -ivh mysql-community-libs-8.0.16-2.el7.x86_64.rpm --nodeps --force # 安装libs
rpm -ivh mysql-community-client-8.0.16-2.el7.x86_64.rpm --nodeps --force # 安装client
rpm -ivh mysql-community-server-8.0.16-2.el7.x86_64.rpm --nodeps --force #安装server # 修改组
chown mysql:mysql /var/lib/mysql -R
# 启动
systemctl start mysqld.service
# 开机自启
systemctl enable mysqld
# 查看默认密码
cat /var/log/mysqld.log | grep password # 修改密码
alter user 'root'@'localhost' identified by '123456';
PHP 参考连接
# 安装依赖
yum install screen gcc git openssl curl
yum install gmp-devel libc-client-devel bzip2-devel enchant-devel libwebp-devel libXpm-devel openldap openldap-devel php-pspell aspell-devel readline-devel libtidy-devel libxslt-devel libxml2-devel openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel autoconf
如果 提示Please reinstall the libzip distribution
# 先卸载原先的 libzip
yum remove libzip
# 下载 libzip 源码(去网站选择合适的版本)
wget https://libzip.org/download/libzip-1.5.1.tar.gz
# 解压
tar -zxvf libzip-1.5.1.tar.gz
cd libzip--1.5.1
# 配置
./configure
# 编译 & 安装
make & make install
# 编译安装
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-config-file-scan-dir=/usr/local/php/conf.d --with-sqlite3 --with-pdo-sqlite --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-posix --enable-pcntl --enable-shmop --enable-sysvshm --enable-sysvsem --enable-sysvmsg --enable-phar --enable-zip --with-zlib --with-zlib-dir --with-bz2 --with-gd --enable-gd-jis-conv --with-webp-dir --with-jpeg-dir --with-png-dir --with-xpm-dir --with-freetype-dir --enable-exif --enable-json --enable-libxml --with-libxml-dir --enable-xml --enable-xmlreader --enable-xmlwriter --enable-simplexml --with-pear --with-xsl --enable-dom --enable-soap --enable-wddx --with-xmlrpc --enable-ctype --enable-filter --with-pcre-regex --with-pcre-jit --with-enchant --with-pspell --enable-fileinfo --enable-mbstring --with-iconv --enable-hash --with-openssl --enable-bcmath --with-gmp --enable-session --enable-sockets --enable-ftp --with-curl --with-ldap --with-ldap-sasl --with-imap --with-kerberos --with-imap-ssl --enable-calendar --with-gettext --with-tidy --with-readline --enable-tokenizer --enable-opcache --enable-cli --enable-cgi --enable-fpm --enable-phpdbg # 提示 libc-client 和 libldap 问题 重新./configure
ln -s /usr/lib64/libc-client.so /usr/lib/libc-client.so
cp -frp /usr/lib64/libldap* /usr/lib/
# 编译 collect2: error: ld returned 1 exit status 在PHP源码目录下 vi Makefile 找到 EXTRA_LIBS 行,在行末添加 ‘ -llber ‘ 保存退出再次make即可 # 安装
make -j `grep processor /proc/cpuinfo | wc -l` && make install
# 拷贝配置文件
cp php.ini-production /usr/local/php/etc/php.ini
cd /usr/local/php/etc/
cp php-fpm.conf.default ./php-fpm.conf
cd php-fpm.d/
cp www.conf.default www.conf
# 启动php-fpm,nginx需要将.php文件交给php-fpm处理
/usr/loca/php/sbin/php-fpm
Nginx安装
cd ~/nginx-1.17.2
./configure --prefix=/usr/local/nginx
make && make install
# 启动
cd /usr/local/nginx/
# 查看是否成功安装
curl 127.0.0.1 # 有welcome nginx即成功
# 修改配置
vim ./conf/nginx.conf # 修改如下
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /$document_root$fastcgi_script_name;
include fastcgi_params;
}
# 重启
./sbin/nginx -s reload
安装完毕!
Linux CentOs下安装lnmp的更多相关文章
- Linux(CentOs)下安装Phantomjs + Casperjs
Linux(CentOs)下安装Phantomjs + Casperjs 是参照cnMiss's Blog http://ju.outofmemory.cn/entry/70691的博客进行安装的 1 ...
- linux/centos下安装nginx(rpm安装和源码安装)详细步骤
Centos下安装nginx rpm包 ...
- Linux CentOS下安装Tomcat9
本文讲解在Linux CentOS下安装Tomcat9,以及Web项目的部署发布. 环境:阿里云ECS 云服务器Linux CentOS 使用XShell客户端连接服务器,进行操作实践. 1.下载To ...
- [Linux]CentOS下安装和使用tmux
前天随意点开博客园,看到了一篇关于tmux的文章 Tmux - Linux从业者必备利器,特意还点进去看了.毕竟Linux对于做游戏服务端开发的我来说,太熟悉不过了.不过我就粗略地看了一眼,就关掉了. ...
- Linux(CentOS)下安装git
上个月把VPS迁到budgetVM,终于不用再受digitalOcean的气了,入手很方便,重点是支持支付宝付款——paypal的界面真是不习惯,开通速度挺快的,1G的内存够我折腾一段时间了~,额外送 ...
- Linux CentOS下安装、配置mysql数据库
假设要在Linux上做j2ee开发.首先得搭建好j2ee的开发环境.包含了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有具体解说了Linux学习之CentOS(七)--Cen ...
- Linux(CentOS)下安装docker
Linux(CentOS)安装Docker 查看当前内核版本 [docker@localhost ~]$ uname -r 确保yum包更新到最新 [docker@localhost ~]$ sudo ...
- linux/centOS 下安装 ngnix
Nginx 是一款轻量级的 Web 服务器/反向代理服务器,比较流行,建议在 Linux 下安装运行. Nginx 需要的依赖 它们包括:gcc,openssl,zlib,pcre(可通过rpm -q ...
- Linux(centos)下安装JDK
安装 JDK是运行java程序必不可少的环境,服务器上跑程序也不例外.首先在安装之前,要知道Linux下安装软件有两种,一种是使用yum等命令直接下载,一种是使用上传下载工具,上传至Linux下使用, ...
随机推荐
- oracle plsql 统计
set serveroutput on DECLARE cursor cemp is select to_char(hiredate,'yyyy') from emp ; phiredate ); c ...
- .Net Oracle TransactionScope的使用
IIS服务器和Oracle服务器: 1.配置msdtc允许DTC访问及启用事务 2.配置msdtc程序入站出站例外 3.数据库连接字符串不能带enlist=false标识 如下这样带enlist=fa ...
- [原]部署kubernetes dashboard(二)
####################### 以下为声明 ##################### 此文档是之前做笔记在两台机上进行的实践,kubernetes处于不断开发阶段 不能保证每 ...
- Javascript / Nodejs call 和 apply
call: 改变了函数运行的作用域,即改变函数里面this的指向apply:同call,apply第二个参数是数组结构 例如: this.name = 'Ab'var obj = {name: 'BB ...
- 【NPDP笔记】第五章 工具与度量
5.1 创意工具 Ideation 创意开发 创意工具 Scamper Substitute Combine Adapter Modify Put to another use Eliminate ...
- DockerFile语法【h】
DockerFile在我理解就是可以将所需要构建镜像的功能.组件都天前配置好,然后直接生成一个Image,而不是先生成镜像,再通过修改容器的方法来生成最终需要的镜像. 镜像的定值实际上就是定值每一 ...
- Git 查看更改
当向仓库中添加文件或删除文件后,可能需要查看更改. 查看更改有多种方式. 1.查看状态 # git status 结果 1 2 # 位于分支 master 无文件要提交,干净的工作区 2.查看日志 # ...
- IDEA的java源码文件左边有一个红色的J
解决办法: 如果源码文件这里已经有一个路径,那就添加现在的.java文件所在目录,或者删除了再重新添加
- 'cross-env' 不是内部或外部命令,也不是可运行的程序 或批处理文件。 npm ERR! code ELIFECYCLE npm ERR! errno 1
在建立vue项目时报的错误 原因是缺少依赖,在此项目目录下下载依赖即可 cnpm install 发一次建立vue项目的完整顺序吧 //打开要创建的项目路径目录,创建项目 vue init webpa ...
- SpringBoot集成Mybatis实现多表查询的两种方式(基于xml)
下面将在用户和账户进行一对一查询的基础上进行介绍SpringBoot集成Mybatis实现多表查询的基于xml的两种方式. 首先我们先创建两个数据库表,分别是user用户表和account账户表 ...