当前位置: 首页 > news >正文

源代码安装部署lamp

源代码安装部署lamp

源代码安装

  • 准备编译环境

  • 配置

  • 编译

  • 编译安装


准备工作

CentOS 7

主机:lamp.example.ocm

IP:192.168.100.70

关闭防火墙与selinux

安装包:

我将它们存放在/package中

apr-1.7.0.tar.gz     
apr-util-1.6.1.tar.gz 
httpd-2.4.54.tar.gz
mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz
php-7.1.10.tar.bz2

apr-1.7.0.tar.gz     apr-util-1.6.1.tar.gz httpd-2.4.54.tar.gzmysql-5.7.37-linux-glibc2.12-x86_64.tar.gzphp-7.1.10.tar.bz2
# CentOS 7 yum源curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo# 安装epel源[root@ldh7 yum.repos.d]# yum -y install epel-release

1、下载所需要的软件包

[root@ldh7 ~]# yum -y install bzip2  vim make wget openssl-devel pcre-devel expat-devel libtool gcc gcc-c++ libxml2-devel

2、解压安装包apr

[root@ldh7 package]# tar -xzvf apr-1.7.0.tar.gz[root@ldh7 package]# cd apr-1.7.0/[root@ldh7 apr-1.7.0]# sed -i '/$RM "$cfgfile"/d' configure # 修改configure[root@ldh7 apr-1.7.0]# ./configure --prefix=/usr/local/apr # 配置 [root@ldh7 apr-1.7.0]# make # 编译[root@ldh7 apr-1.7.0]# make install # 编译安装 

3、解压安装包apr-util

[root@ldh7 package]# tar -xzvf apr-util-1.6.1.tar.gz[root@ldh7 package]# cd apr-util-1.6.1/[root@ldh7 apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr  # 配置[root@ldh7 apr-util-1.6.1]# make [root@ldh7 apr-util-1.6.1]# make install 

4、解压安装包httpd

[root@ldh7 package]# tar -xzvf httpd-2.4.54.tar.gz[root@ldh7 package]# cd httpd-2.4.54/
# 配置[root@ldh7 httpd-2.4.54]# ./configure --prefix=/usr/local/apache \--sysconfdir=/etc/httpd24 \--enable-so \--enable-ssl \--enable-cgi \--enable-rewrite \--with-zlib \--with-pcre \--with-apr=/usr/local/apr \--with-apr-util=/usr/local/apr-util/ \--enable-modules=most \--enable-mpms-shared=all \--with-mpm=prefork 
[root@ldh7 httpd-2.4.54]# make[root@ldh7 httpd-2.4.54]# make install[root@ldh7 httpd-2.4.54]# /usr/local/apache/bin/apachectl start # 启动apache服务

5、部署lamp-mysql

# 创建mysql用户[root@ldh7 ~]# useradd -r -M -s /sbin/nologin mysql# 安装依赖包[root@ldh7 ~]# yum -y install libncurses*​# 配置mysql[root@ldh7 package]# tar -xzvf mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz -C /usr/local/[root@ldh7 package]# cd /usr/local/[root@ldh7 local]# ln -sv mysql-5.7.37-linux-glibc2.12-x86_64/ mysql # 创建软链接,方便管理mysql[root@ldh7 local]# chown -R mysql.mysql /usr/local/mysql [root@ldh7 local]# mkdir -p /opt/data # 创建目录,存放mysql数据[root@ldh7 local]# chown -R mysql.mysql /opt/data/ [root@ldh7 local]# yum -y install libaio​# 数据库初始化[root@ldh7 local]# /usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --datadir=/opt/data/ [root@ldh7 local]# ln -sv /usr/local/mysql/include/ /usr/local/include/mysql [root@ldh7 local]# echo '/usr/local/mysql/lib' > /etc/ld.so.conf.d/mysql.conf [root@ldh7 local]# ldconfig # 输入这个命令,如果没报错,初始化成功​# 编辑mysql配置文件[root@ldh7 local]# vim /etc/my.cnf​[mysqld]basedir = /usr/local/mysqldatadir = /opt/datasocket = /tmp/mysql.sockport = 3306pid-file = /opt/data/mysql.piduser = mysqlskip-name-resolve:wq # 保存退出[root@ldh7 local]# sed -ri "s#^(basedir=).*#\1/usr/local/mysql#g"  /usr/local/mysql/support-files/mysql.server[root@ldh7 local]# sed -ri "s#^(datadir=).*#\1/opt/data#g"  /usr/local/mysql/support-files/mysql.server​#定义mysql服务可以使用systemd来进行管理[root@ldh7 local]# vim /usr/lib/systemd/system/mysqld.service​[Unit]Description=mysql server daemonAfter=network.target​[Service]Type=forkingExecStart=/usr/local/mysql/support-files/mysql.server startExecStop=/usr/local/mysql/support-files/mysql.server stopExecReload=/bin/kill -HUP \$MAINPID​[Install]WantedBy=multi-user.target​[root@ldh7 local]# systemctl daemon-reload [root@ldh7 local]# systemctl enable --now mysqld ​# 设置数据库密码[root@ldh7 local]# /usr/local/mysql/bin/mysql -uroot -e "set password=password('123456')"#做一个链接,添加mysql命令的变量到环境变量[root@ldh7 local]# echo 'export PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile[root@ldh7 local]# source /etc/profile

6、部署lamp-php

# 安装依赖包,安装GD库和GD库关联程序,用来处理和生成图片[root@ldh7 local]# yum -y install \libjpeg \libjpeg-devel \libpng libpng-devel \freetype freetype-devel \libxml2 \libxml2-devel \zlib zlib-devel \curl curl-devel  
# 解压php包文件[root@ldh7 package]# tar -xjvf  php-7.1.10.tar.bz2
[root@ldh7 package]# cd php-7.1.10/# 配置编译安装php[root@ldh7 php-7.1.10]# ./configure \--prefix=/usr/local/php \           #指定将 PHP 程序的安装路径--with-apxs2=/usr/local/apache/bin/apxs \       #指定Apache httpd服务提供的apxs 模块支持程序的文件位置--with-mysql-sock=/tmp/mysql.sock \ #指定mysql 数据库连接文件的存储路径--with-mysqli \             #添加 MySQL 扩展支持 #mysqli扩展技术不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定--with-zlib \                   #支持zlib功能,提供数据压缩--with-curl \                   #开启curl扩展功能,实现http的get下载和post请求方法--with-gd \                 #激活gd库的支持--with-jpeg-dir \               #激活jpeg的支持--with-png-dir \                #激活png的支持--with-freetype-dir \--with-openssl \                --enable-mbstring \         #启动多字节字符串功能,以便支持中文等代码--enable-xml \              #开启扩展性标记语言模块--enable-session \              #会话--enable-ftp \              #文本传输协议--enable-pdo \              #函数库--enable-tokenizer \            #令牌解释器--enable-zip                    #zip压缩格式​[root@ldh7 php-7.1.10]# make[root@ldh7 php-7.1.10]# make install  [root@ldh7 php-7.1.10]# libtool --finish /package/php-7.1.10/libs
# 配置php# 测试环境时使用php.ini-development文件,生产环境使用php.ini-production文件[root@ldh7 php-7.1.10]# cp php.ini-development /usr/local/php/lib/php.ini​# 修改php配置文件,设置时区[root@ldh7 php-7.1.10]# sed -i 's/;date.timezone =/date\.timezone = \Asia\/Shanghai/' /usr/local/php/lib/php.ini​# 修改httpd服务配置文件,让apache支持php[root@ldh7 php-7.1.10]# echo "AddType application/x-httpd-php .php" >> /etc/httpd24/httpd.conf[root@ldh7 php-7.1.10]# echo "AddType application/x-httpd-php-source .phps" >> /etc/httpd24/httpd.conf​[root@ldh7 php-7.1.10]# sed  -i 's/index.html/index\.php index\.html/' /etc/httpd24/httpd.conf​# 验证php测试页[root@ldh7 php-7.1.10]# rm -rf /usr/local/apache/htdocs/index.html​[root@ldh7 php-7.1.10]# vim  /usr/local/apache/htdocs/index.php <?phpphpinfo();?>​# 启动apache服务[root@ldh7 php-7.1.10]# /usr/local/apache/bin/apachectl stop[root@ldh7 php-7.1.10]# /usr/local/apache/bin/apachectl start

验证

浏览器输入192.168.100.70

http://www.xdnf.cn/news/1326925.html

相关文章:

  • AI Deep Research 思维链简介
  • 微服务-06.微服务拆分-拆分原则
  • 云手机矩阵:重构企业云办公架构的技术路径与实践落地
  • OpenSSL与OpenSSH的关系
  • SpringBoot-集成POI和EasyExecl
  • PG靶机 - Pebbles
  • 瑞萨e2studio:HardwareDebug配置项详解
  • 主从切换是怎么保证数据一致的?从库为什么会延迟
  • ReLens「Focus DSLR 大光圈虚化相机」v4.1.2 f 解锁付款版 —一款专业大光圈和单反级背景虚化编辑软件
  • 如何将任意文件一键转为PDF?
  • 计算机大数据毕业设计推荐:基于Spark的气候疾病传播可视化分析系统【Hadoop、python、spark】
  • AJAX (一)
  • F003疫情传染病数据可视化vue+flask+mysql
  • JavaSSM框架从入门到精通!第二天(MyBatis(一))!
  • flink+clinkhouse安装部署
  • 当GitHub宕机时,我们如何协作
  • Netty内存池中ChunkList详解
  • 决策树算法学习笔记
  • 设计模式笔记_行为型_解释器模式
  • 技术分享:跨域问题的由来与解决
  • 关于诸多编程语言类型介绍
  • AP6275S AMPAK正基WiFi6模块方案与应用
  • 链表-2.两数相加-力扣(LeetCode)
  • 中科米堆CASAIM自动化三维测量设备测量汽车壳体直径尺寸
  • 丝杆支撑座在自动化生产线中的关键支撑
  • Java -- 用户线程和守护线程--线程同步机制
  • ios使用saveVideoToPhotosAlbum 保存视频失败提示 invalid video
  • oracle官网下载jdk历史版本,jdk历史版本下载
  • 小程序开发APP
  • 应用控制技术、内容审计技术、AAA服务器技术