当前位置: 首页 > 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.lryc.cn/news/625955.html

相关文章:

  • 云端赋能,智慧运维:分布式光伏电站一体化监控平台研究
  • “R语言+遥感”的水环境综合评价方法实践技术应用
  • 微服务-07.微服务拆分-微服务项目结构说明
  • 云电脑 vs 传统PC:全面对比3A游戏与AI训练的成本与性能
  • 基于STM32+NBIOT设计的宿舍安防控制系统_264
  • Java NIO (New I/O) 深度解析
  • 深入理解Prompt构建与工程技巧:API高效实践指南
  • webpack》》Plugin 原理
  • Spring Ai Prompts
  • webrtc弱网-GoogCcNetworkController类源码分析与算法原理
  • Jenkins服务器SSH公钥配置步骤
  • 哈希:两数之和
  • 磁盘镜像格式RAW、QCOW2、VHD、VMDK的核心区别
  • Android -登录注册实践技术总结
  • Android SystemServer 中 Service 的创建和启动方式
  • 代码随想录Day56:图论(冗余连接、冗余连接II)
  • CLIK-Diffusion:用于牙齿矫正的临床知识感知扩散模型|文献速递-深度学习人工智能医疗图像
  • 心路历程-启动流程的概念
  • 如何让你的知识分享更有说服力?
  • RNN如何将文本压缩为256维向量
  • AC内容审计技术
  • 单一职责原则(SRP)深度解析
  • django生成迁移文件,执行生成到数据库
  • CNN-LSTM-Attention、CNN-LSTM、LSTM三模型多变量时序光伏功率预测
  • 开源 GIS 服务器搭建:GeoServer 在 Linux 系统上的部署教程
  • Scikit-learn通关秘籍:从鸢尾花分类到房价预测
  • Vim笔记:缩进
  • 从一个ctf题中学到的多种php disable_functions bypass 姿势
  • 重塑酒店投屏体验:私密投屏技术的革新应用
  • 基于单片机智能点滴输液系统