Apache编译安装及LAMP架构
1.apache三种工作模式
1)prefork工作模式
一个进程处理一个用户请求
稳定但是不适合高并发的生产环境
2)worker工作模式
一个进程生成多个线程
合适高并发环境但是需要考虑到线程的安全问题
3)event工作模式
支持keepalived长连接
但是不支持httpds
2.apache基本信息
主配置文件:/etc/httpd/conf/http.conf
默认监听的端口:80
https:443
listen:80
directoryindex:index.html
documentroot:/var/www/html指定网站根目录
user:apache
servername:域名
3.服务器返回状态码
200:ok请求成功
304:表示一个缓存的资源是否发生过更改
403:forbden表示客户端没有权限访问该资源
404:notfound表示客户端请求的资源不存在
500:服务器内部错误
502:代理服务器从上游服务器获取到的是伪响应
4.LAMP通信流程
linux+apache+mysql/mariadb+php

1)用户发送http请求到达httpd服务器
2)httpd解析url获取需要的资源的路径,通过内核空间读取硬盘资源,如是静态资源,则构建响应报文,发回给用户
3)如果是动态资源,将资源地址发给php解析器,解析php程序文件,解析完毕将内容发回给httpd,httpd构建响应报文,发回给用户
4)如果涉及到数据库操作,则利用php -mysql驱动,获取数据库数据,返回给PHP解析器。
5.编译安装apache
第一步:编译安装apr
1)上传相关的安装包:rz
2)解压:tar xf
3)编译:./configure - -prefix=/usr/local/apr
4)解决依赖关系:yum install gcc –y
5)继续编译:./configure - -prefix=/usr/local/apr
6)安装:make&&make install
第二步:编译安装apr -util
1)进行编译:./configure - -with -apr=/usr/local/apr - -prefix=/usr/local/apr -util#需要指定apr位置
2)安装:make&&make install
第三步:编译安装httpd
1)编译:
./configure - -prefix=/usr/local/httpd2.4
- -with -apr=/usr/local/apr
- -with -apr-util=/usr/local/apr-util
- - enable -cache
- - enable -deflate
- - enable -ssl
- - enable -rewrite
- -with -mpm=event
2)解决依赖:yum install pcre pcre-devel openssl openssl-devel –y
3)安装:make&&make install
第四步:在任何路径下执行apachectl:
[root@ken bin]#cat/etc/profile.d/httpd.sh
exportPATH=/usr/local/httpd2.4/bin:$PATH
[root@ken bin]#export/etc/profile.d/httpd.sh
-bash:export:`/etc/profile.d/httpd.sh’:notavalididentifier
[root@ken bin]#source/etc/profile.d/httpd.sh
6.基于端口和域名创建虚拟主机
基于端口:vim /etc/httpd/conf/httpd.conf
listen81
<virtualhost*:81>
directoryindex index.html
documentroot /var/www/ken1
</virtualhost>
基于域名:
<virtualhost192.168.64.4>
directoryindex index.html
documentroot /var/www/ken1
servername www.ken.com
</virtualhost>
创建网站根目录:mkdir/var/www/ken1
7.LAMP架构
linux+apache+mysql/mariadb+php
1)部署LAMP架构:yum install httpd php php -mysql mariadb-server -y
2)启动Apache与数据库:
systemctl restart httpdmariadb
3)上传WordPress安装包并解压
4)配置数据库文件
[root@ken html]#cp wp-config-sample.php wp-config.php
[root@ken html]#vim wp-config.php
/**WordPress数据库的名称*/
define(‘DB_NAME’,‘litong’);
/**MySQL数据库用户名*/
define(‘DB_USER’,‘litong’);
/**MySQL数据库密码*/
define(‘DB_PASSWORD’,‘123’);
5)配置数据库
create database ken;
grant all on*.*to ken@’localhost’ identified by ‘123’;
Apache编译安装及LAMP架构的更多相关文章
- 末学者笔记--apache编译安装及LAMP架构上线
apache介绍 一.Apache的三种工作模式 Apache一共有3种稳定的MPM模式(多进程处理模块),它们分别是prefork.worker.event.http-2.2版本的httpd默认的m ...
- apache编译安装 httpd 2.2 httpd 2.4
#apache编译安装#httpd 2.2 , httpd 2.4 #!/bin/sh #apache编译安装 #httpd 2.2 , httpd 2.4 #centos #rpm -e httpd ...
- apache编译安装参数说明
apache编译安装参数说明 ./configure //配置源代码树--prefix=/usr/local/apache2 //体系无关文件的顶级安装目录prefix ,也就apache的安装目录. ...
- LANMP系列教程之Apache编译安装CentOS7环境
1.准备好源码包并配置好yum源,需要的源码包包括:httpd-2.4.18.apr-1.5.2.tar.gz.apr-util-1.5.4.tar.gz 2.准备用户 groupadd -r a ...
- Apache编译安装
1.准备好源码包并配置好yum源,需要的源码包包括:httpd-2.4.18.apr-1.5.2.tar.gz.apr-util-1.5.4.tar.gz 2.准备用户 groupadd -r apa ...
- CentOS 7.4下源码编译安装配置LAMP环境详解
CentOS 7.4搭建LAMP,LAMP:Linux.Apache.MySQL.PHP. 目录:第一部分 准备工作第二部分 安装Apache服务第三部分 安装MySQL服务第四部分 搭建PHP运行环 ...
- Apache web服务器(LAMP架构)
1.apache介绍 1).世界上使用率最高的网站服务器,最高时可达70%:官方网站:apache.org 2).http 超文本协议 HTML 超文本标记语言 3).URL 统一资源定位符 http ...
- 在CentOS6上编译安装实现LAMP(php-modules)+phpMyAdmin安装过程全记录
php与apache协作有三种模式:CGI.modules.FastCGI. 在CGI模式下,用户请求php文件时,apache会启动响应进程,调用php处理器处理请求,然后将结果返回给客户端.用户响 ...
- CentOS 5.9裸机编译安装搭建LAMP
Linux系统:CentOS 5.9,查看CentOS版本,命令如下: [root@localhost /]# cat /etc/redhat-release CentOS release 5.9 ( ...
随机推荐
- oozie 启动过程中--- Existing PID file found during start. Removing/clearing stale PID file.
如果oozie使用kill -9 暴力杀死了tomcat,再启动的时候,会出问题,需要删除tomcat的pid文件 彻底停止oozie的tomcat的进程,然后删除pid文件 rm -rf /exp ...
- poj1015 Jury Compromise[背包]
每一件物品有两个属性.朴素思想是把这两种属性都设计到状态里,但空间爆炸.又因为这两个属性相互间存在制约关系(差的绝对值最小),不妨把答案设计入状态中,设$f[i][j]$选$i$个人,两者之差$j$. ...
- 手摸手带你实现 小游戏<别踩白块儿 -- 内有游戏链接>
别踩白块儿 使用(白鹭引擎)Egret编写的游戏 游戏地址 准备工作 了解白鹭引擎 并安装编写工具 安装游戏引擎 安装Egret Wing3 创建项目 创建项目可以选择不同版本的引擎,创建成功之后还可 ...
- IPC 进程间通信方式——消息队列
消息队列 消息队列是内核中的一个链表 用户进程将数据传输到内核后,内核重新添加一些如用户ID.组ID.读写进程的ID和优先级等相关信息后并打包成一个数据包称为消息 允许一个或多个进程往消息队列中读写消 ...
- [大数据] hadoop伪分布式安装
注意:节点主机的hostname不要带"_"等字符,否则会报错. 一.安装jdk rpm -i jdk-7u80-linux-x64.rpm 配置java环境变量: vi + /e ...
- PHP关于对象访问静态方法、属性等问题
为何有这样的问题呢?源自一段代码,如下: class A { // public static $name = 'wangyumeidsb'; public $name = 'woaini'; pub ...
- [模板] KMP算法/Border
KMP 算法 KMP (Knuth-Morris-Pratt) 算法是一种在线性时间内匹配文本串和模式串的算法. 称字符串的 Border 集合为 \[ \operatorname {Border} ...
- Travis CI Could not find or load main class org.gradle.wrapper.GradleWrapperMain 错误
问题 在 Travis CI 编译的时候出现 Error: Could not find or load main class org.gradle.wrapper.GradleWrapperMain ...
- 最小生成树问题:kruskal算法
struct edge(int u,v,cost;};bool comp(const edge& e1,const edge& e2){ return e1.cost<e2 ...
- TTTTTTTTTTTTTT CF 645D 点的优先级
题意:给你n个节点,m对优先级关系,a[i] b[i]代表a[i]的优先级比b[i]高,现在问你至少需要前多少对关系就能确定所有节点的优先级: #include <iostream> #i ...