一、LAMP架构介绍

1.1 LAMP概述

LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态Web站点服务及其应用开发环境。LAMP是一个缩写词,具体包括Linux操作系统、Apache网站服务器、MySQL数据库服务器、PHP(或Perl、Python)网页编程语言。

1.2 LAMP各组件介绍

1.2.1 (平台)Linux

作为LAMP架构的基础,提供用于支撑Web站点的操作系统,能够与其他三个组件提供更好的稳定性,兼容性(AMP组件也支持Windows、UNIX等平台) 。

1.2.2(前台)Apache

作为LAMP架构的前端,是一款功能强大,稳定性好的Web服务器程序,该服务器直接面向用户提供网站访问,发送网页,图片等文件内容。

1.2.3(后台)MySQL

作为LAMP架构的后端,是一款流行的开源关系数据库系统。在企业网站、业务系统等应用中,各种账户信息、产品信息,客户资料、业务数据等都可以存储到MySQL数据库,其他程序可以通过SQL语句来查询,更改这些信息。

1.2.4(中间连接)PHP/Perl/Python

作为三种开发动态网页的编程语言,负责解释动态网页文件,负责沟通Web服务器和数据库系统以协同工作,并提供Web应用程序的开发和运行环境。其中PHP是一种被广泛应用的开放源代码的多用途脚本语言,它可以嵌入到HTML中,尤其适合于Web应用开发。

1.3 LAMP各组件安装顺序

在构建LAMP平台时,各组件的安装顺序依次为Linux、Apache、MySQL、PHP。其中Apache和MySQL的安装并没有严格的顺序,PHP环境的安装一般放到最后安装,负责沟通 Web 服务器和数据库系统以协同工作。

二、编译安装Apache httpd服务

2.1 操作步骤流程

1.关闭防火墙,将安装Apache所需软件包传到/opt目录下

systemctl stop firewalld systemctl disable firewalld setenforce 0

httpd-2.4.29.tar.gz apr-1.6.2.tar.gz apr-util-1.6.0.tar.gz

apr组件包用于支持Apache上层应用跨平台,提供底层接口库,能有效的降低并发连接数、降低进程和减少访问堵塞。

2.安装环境依赖包

yum -y install gcc gcc-c++ make pcre pcre-devel expat-devel perl

各程序作用解释如下:

gcc #C语言的编译器

gcc-c++ #C++的编译器

make #源代码编译器(源代码转换成二进制文件)

pcre #pcre是一个Perl函数库,包括perl 兼容的正则表达式库

pcre-devel #perl的接口开发包

expat-devel #用于支持网站解析HTML、XML文件

perl #perl语言编译器

3.配置软件模块

cd /opt/

tar zxvf apr-1.6.2.tar.gz

tar zxvf apr-util-1.6.0.tar.gz

tar jxvf httpd-2.4.29.tar.bz2

mv apr-1.6.2 /opt/httpd-2.4.29/srclib/apr

mv apr-util-1.6.0 /opt/httpd-2.4.29/srclib/apr-util

cd /opt/httpd-2.4.29/

./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi

各配置命令作用解释如下:

--enable-so \ #启用动态加载模块支持,使 httpd 具备进一步扩展功能的能力

--enable-rewrite \ #启用网页地址重写功能,用于网站优化、防盗链及目录迁移维护

--enable-charset-lite \ #启动字符集支持,以便支持使用各种字符集编码的页面

--enable-cgi #启用CGI(通用网关接口)脚本程序支持,便于网站的外部扩展应用访问能力

4.编译及安装

make #make -j 2 表示开2核同时进行编译

make install

5.优化配置文件路径,并把httpd服务的可执行程序文件放入路径环境变量的目录中便于系统识别

ln -s /usr/local/httpd/conf/httpd.conf /etc/ #做个软链接

ln -s /usr/local/httpd/bin/* /usr/local/bin/ #做个软链接

6.添加httpd系统服务

方法一:

cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd #用于service服务管理

chmod +x /etc/init.d/httpd

vi /etc/init.d/httpd

!/bin/bash #在第一行前插入新行,添加此三行内容

chkconfig: 35 85 21 #35级别自动运行 第85个启动 第21个关闭

description: Apache is a World Wide Web server

chkconfig --add httpd #将httpd服务加入到service管理器

systemctl start httpd.service #开启http服务(关闭和开启要使用相同的方式)



service httpd start #开启http服务(关闭和开启要使用相同的方式)

方法二:

vim /lib/systemd/system/httpd.service

[Unit]

Description=The Apache HTTP Server #描述

After=network.target #描述服务类别

[Service]

Type=forking #后台运行方式

PIDFile=/usr/local/httpd/logs/httpd.pid #PID文件位置

ExecStart=/usr/local/bin/apachectl $OPTIONS #启动服务

ExecReload=/bin/kill -HUP $MAINPID #根据PID重载配置

[Install]

WantedBy=multi-user.target

systemctl start httpd.service #开启http服务(关闭和开启要使用相同的方式)

systemctl enable httpd.service #设为开机自启动

7.修改httpd 服务配置文件

vim /etc/httpd.conf

--52行--修改

Listen 192.198.80.10:80

--197行--取消注释,修改

ServerName www.kgc.com:80

--221行--默认首页存放路径

DocumentRoot "/usr/local/httpd/htdocs"

--255行--默认首页文件名设置

DirectoryIndex index.html

httpd -t 或 apachectl -t #检查配置文件的配置项是否有误

cat /usr/local/httpd/htdocs/index.html #查看html的内容

systemctl restart httpd.service

8.浏览器访问验证

netstat -anpt | grep 80

echo "192.168.153.10 www.zww.com" >> /etc/hosts

2.2、操作步骤

第一步:关闭防火墙和selinux,然后将三个压缩文件拖入到xshell内



第二步:安装环境依赖包



第三步:配置软件模块

1)对三个压缩包进行解压



2)将apr的两个文件移动到httpd的srclib文件内



3)对apr两个文件进行修改名称



4)切换目录执行configure文件



第四步:编译并安装



第五步:优化配置文件路径

1)创建软链接



第六步:添加httpd系统服务

1)修改httpd配置文件



2)将httpd服务加入到service管理器并开启服务



第七步:备份修改httpd服务配置文件

1)备份修改文件





2)检查配置项是否有误



第八步:浏览器进行访问验证

LAMP介绍以及Apache安装的更多相关文章

  1. lamp环境搭建(apache安装,mysql安装,php安装)

    1.卸载系统内置的LAMP环境 1)卸载httpd服务(内置Apache) ① 使用rpm指令查询安装的httpd服务 ② 卸载httpd服务 如果出现以上提示,代表系统默认不允许我们卸载软件,使用强 ...

  2. LAMP介绍及安装

    LAMP介绍及安装 1. LAMP是什么? LAMP,包含Linux + Apache + PHP + Mysql. LAMP适用环境 适用于追求极致稳定的WEB环境,缺点是需要消耗更多资源. 除了L ...

  3. centos LAMP第二部分apache配置 下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转 配置apache的访问日志 配置静态文件缓存 配置防盗链 访问控制 apache rewrite 配置开机启动apache tcpdump 第二十节课

    centos    LAMP第二部分apache配置  下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转  配置apache的访问日志  配置静态文件缓存  配置防盗链 ...

  4. LAMP架构介绍、MySQL、MariaDB介绍、MySQL安装

    5月23日任务 课程内容: 11.1 LAMP架构介绍11.2 MySQL.MariaDB介绍11.3/11.4/11.5 MySQL安装扩展mysql5.5源码编译安装 http://www.ami ...

  5. Centos 7 安装LAMP以及在Apache上安装positiveSSL。

    简介 LAMP(linux , Apache, mysql , php)是集成动态网站经常使用的一套开源软件,实际包含linux操作系统,Apache web服务器,mysql(mariadb 分支) ...

  6. linux安装lamp环境(linux+apache+mysql+php)

    源码安装 本次使用 Centos7.2 MySQL5.7.22 Apache2.4.37 PHP5.6.38 安装Apache 安装httpd和所需依赖:gcc, apr, apr-util,apr- ...

  7. ZH奶酪:Ubuntu 14.04安装LAMP(Linux,Apache,MySQL,PHP)

    (Linux Operating System,Apache Web Server,MySQL database,PHP) 首先,一个三行命令搞定的方法: sudo apt-get update su ...

  8. CentOS 7.0 安装配置LAMP服务器方法(Apache+PHP+MariaDB)(转)

    转自:http://www.jb51.net/os/188488.html 作者:佚名 字体:[增加 减小] 来源:osyunwei  准备篇: CentOS 7.0系统安装配置图解教程 http:/ ...

  9. Apache Ignite 学习笔记(一): Ignite介绍、部署安装和REST/SQL客户端使用

    Apache Ignite 介绍 Ignite是什么呢?先引用一段官网关于Ignite的描述: Ignite is memory-centric distributed database, cachi ...

随机推荐

  1. Java并发之ReentrantLock源码解析(一)

    ReentrantLock ReentrantLock是一种可重入的互斥锁,它的行为和作用与关键字synchronized有些类似,在并发场景下可以让多个线程按照一定的顺序访问同一资源.相比synch ...

  2. SpringBoot数据访问(三) SpringBoot整合Redis

    前言 除了对关系型数据库的整合支持外,SpringBoot对非关系型数据库也提供了非常好的支持,比如,对Redis的支持. Redis(Remote Dictionary Server,即远程字典服务 ...

  3. 每日三道面试题,通往自由的道路10——JMM篇

    茫茫人海千千万万,感谢这一秒你看到这里.希望我的面试题系列能对你的有所帮助!共勉! 愿你在未来的日子,保持热爱,奔赴山海! 每日三道面试题,成就更好自我 今天我们还是继续聊聊多线程的一些其他话题吧! ...

  4. 利用C语言判别用户输入数的奇偶性和正负性

    要求:利用C语言判别用户输入数的奇偶性和正负性 提示:可以利用%求余数来判别 由题可知 我们需要if..else的结构来实现区分奇偶和正负 区分奇偶我们可以用: if (a % 2 == 0) { p ...

  5. AcWing 1303. 斐波那契前 n 项和

    输出斐波那契数列前 n 项和 对m取摸的结果 #include<bits/stdc++.h> #define LL long long #define N 3 using namespac ...

  6. mac系统终端sudo免输入密码

    p.p1 { margin: 0; font: 12px ".PingFang SC" } p.p2 { margin: 0; font: 12px "Helvetica ...

  7. 【Spring】Spring中的循环依赖及解决

    什么是循环依赖? 就是A对象依赖了B对象,B对象依赖了A对象. 比如: // A依赖了B class A{ public B b; } // B依赖了A class B{ public A a; } ...

  8. 用Python分析下王小波与李银河写情书最爱用哪些词

    作家王小波其实也是我国最早期的程序员,突发奇想,王小波写情书最喜欢用哪些词呢?用Python词云分析下! 直接上代码吧,有注释很好理解.输出的图片设置的比较大,所以运行的比较慢,可以适当把图片尺寸改小 ...

  9. 双线性插值算法的FPGA实现

    本设计预实现720P到1080P的图像放大,输入是YUV444数据,分量像素位宽为10bit,采用的算法为双线性插值法,开发平台是xiinx K7开发板. 双线性插值法即双次线性插值,首先在横向线性插 ...

  10. 计算机毕业设计选题大合集,含ssm,springboot,小程序,php,python

    1基于springboot医院急诊系统 2基于springboot校园闲置物品租售系统 3基于springboot校园闲置物品交易网站 4基于springboot图书网站 5基于springboot外 ...