LAMP & LNMP及简单环境搭建

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: LAMP & LNMP及简单环境搭建

LAMP & LNMP

LAMP = Linux + Apache + MySQL + PHP

LNMP = Linux + Nginx + MySQL + PHP


流行,免费,开源,轻量


Linux VS Windows: 完全免费,稳定高效

MySQL: 关系型数据库

Apache:Web服务器软件

监听端口,接收请求,解析HTTP协议,转发给PHP

Nginx 服务器软件


Apache & Nginx:前景更好,配置轻松,性能更优

Apache: select轮询机制

Nginx: epoll事件监听机制


编译安装


./configure  # 编译前准备
make         # 编译
make install # 安装

安装依赖软件

yum install -y vim wget gcc gcc++ libxml2-devel

编译安装php

1、下载

https://www.php.net/downloads.php


wget https://www.php.net/distributions/php-7.3.11.tar.gz
tar -zxvf php-7.3.11.tar.gz
cd php-7.3.11

2、编译安装

启用支持FPM FastCGI

https://www.php.net/manual/zh/install.fpm.install.php


.

/configure --prefix=/usr/local/php7 --enable-fpm
make && make install

CGI 公共网关接口,一个协议 fork子进程,处理完释放

FastCGI 语言无关,解释器子进程常驻在内存

FPM PHP扩展


$ php -r "phpinfo();"

MySQL

1、下载

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


source code

-> Generic Linux (Architecture Independent), Compressed TAR Archive


wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.18.tar.gz

2、安装依赖


yum install -y cmake gcc-c++ ncurses-devel perl-Data-Dumper boost boost-doc boost-devel

3、安装


cmake \
 -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
 -DMYSQL_DATADIR=/data/mysql/data \
 -DSYSCONFDIR=/etc \
 -DMYSQL_USER=mysql \
 -DWITH_MYISAM_STORAGE_ENGINE=1 \
 -DWITH_INNOBASE_STORAGE_ENGINE=1 \
 -DWITH_ARCHIVE_STORAGE_ENGINE=1 \
 -DWITH_MEMORY_STORAGE_ENGINE=1 \
 -DWITH_READLINE=1 \
 -DMYSQL_UNIX_ADDR=/var/run/mysql/mysql.sock \
 -DMYSQL_TCP_PORT=3306 \
 -DENABLED_LOCAL_INFILE=1 \
 -DENABLE_DOWNLOADS=1 \
 -DWITH_PARTITION_STORAGE_ENGINE=1 \
 -DEXTRA_CHARSETS=all \
 -DDEFAULT_CHARSET=utf8 \
 -DDEFAULT_COLLATION=utf8_general_ci \
 -DWITH_DEBUG=0 \
 -DMYSQL_MAINTAINER_MODE=0 \
 -DWITH_SSL:STRING=bundled \
 -DWITH_ZLIB:STRING=bundled
make && make install

4、启动使用


mysqld
mysql

Apache

1、下载

http://httpd.apache.org/


依赖:apr apr-util pcre


wget http://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.41.tar.gz
tar -zxvf  httpd-2.4.41.tar.gz
cd httpd-2.4.41

2、编译安装(配置必要的参数略)

./configure
make && make install

3、启动


apachetcl -k start

开放80端口sudo


firewall-cmd --zone=public --add-port80/tcp --permanent
systemctl restart firewalld.service

Nginx

1、下载

http://nginx.org/en/download.html


# 下载
wget  http://nginx.org/download/nginx-1.16.1.tar.gz
tar -zxvf nginx-1.16.1.tar.gz
# 安装 pcre url重写功能
./configure --prefix=/usr/local/nginx --with-pcre=/pcre
make && make install
# 启动
./nginx

工作方式

请求 <-> Nginx <-> PHP-FPM

配置


location ~ \.php {
         fastcgi_pass 127.0.0.1:9000;
         fastcgi_index  index.php;
         fastcgi_split_path_info ^(.+?\.php)(/.*)$;
         fastcgi_param PATH_INFO $fastcgi_path_info; 
         fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
         include        fastcgi_params;
    }

配置php-fpm

php-fpm.conf


pm = dynamic 设置动态解析
pm.max_children = 5 最大可以启动多少进程
pm.start_servers = 2 默认启动几个进程

配置Nginx

nginx.conf

worker_processes 1; (启动多少子进程)

重启

nginx -s reload

查看进程


ps aux|grep nginx

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
3月前
|
前端开发 Serverless 应用服务中间件
Serverless痛点解决问题之将传统 LAMP/LNMP 项目直接 FaaS 化如何解决
Serverless痛点解决问题之将传统 LAMP/LNMP 项目直接 FaaS 化如何解决
41 0
|
3月前
|
关系型数据库 Linux 应用服务中间件
在Linux中,什么是LAMP和LNMP堆栈?
在Linux中,什么是LAMP和LNMP堆栈?
|
关系型数据库 MySQL Linux
LAMP和LNMP区别--详解
LAMP和LNMP区别--详解
423 0
|
tengine NoSQL 关系型数据库
ezhttp一键安装配置lnmp lamp lnamp(nginx apache php mysql)环境
ezhttp一键安装配置lnmp lamp lnamp(nginx apache php mysql)环境
130 0
ezhttp一键安装配置lnmp lamp lnamp(nginx apache php mysql)环境
|
关系型数据库 MySQL 应用服务中间件
LNMP环境搭建
LNMP环境搭建
184 0
|
弹性计算 小程序 网络协议
ECS新人用户快速完成LNMP环境搭建、域名注册、SSL证书申请
服务器新人快速上手ECS的亲身经验体会,基于阿里云ecs.t6-c1m2.large ,使用centOS操作系统。
508 0
ECS新人用户快速完成LNMP环境搭建、域名注册、SSL证书申请
|
缓存 负载均衡 关系型数据库
ECS云服务器训练营第六天----LAMP和LNMP环境搭建
LAMP 的全称是Linux + Apache + Mysql +Php; LNMP 的全称是Linux + Nginx + Mysql +Php; LAMP和LAMP的每一个字母都是每一个软件的开头第一个字母,代表一个软件名;两者最大的区别是web服务器不同;
1523 0
ECS云服务器训练营第六天----LAMP和LNMP环境搭建
|
关系型数据库 MySQL 应用服务中间件
手动部署LNMP环境(Alibaba Cloud Linux 2)
本场景带您体验如何在Alibaba Cloud Linux 2.1903 LTS 64位操作系统的云服务器上搭建LNMP环境。
|
6月前
|
关系型数据库 应用服务中间件 nginx
基于Docker的LNMP环境微服务搭建
基于Docker的LNMP环境微服务搭建
基于Docker的LNMP环境微服务搭建
|
关系型数据库 MySQL 应用服务中间件
快速搭建LNMP环境
Nginx是一款小巧而高效的Web服务器软件,可帮您在Linux系统下快速方便地搭建出LNMP Web服务环境。本教程介绍如何搭建LNMP环境,其中LNMP分别代表Linux、Nginx、MySQL和PHP。