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架构的更多相关文章

  1. 末学者笔记--apache编译安装及LAMP架构上线

    apache介绍 一.Apache的三种工作模式 Apache一共有3种稳定的MPM模式(多进程处理模块),它们分别是prefork.worker.event.http-2.2版本的httpd默认的m ...

  2. 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 ...

  3. apache编译安装参数说明

    apache编译安装参数说明 ./configure //配置源代码树--prefix=/usr/local/apache2 //体系无关文件的顶级安装目录prefix ,也就apache的安装目录. ...

  4. 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 ...

  5. Apache编译安装

    1.准备好源码包并配置好yum源,需要的源码包包括:httpd-2.4.18.apr-1.5.2.tar.gz.apr-util-1.5.4.tar.gz 2.准备用户 groupadd -r apa ...

  6. CentOS 7.4下源码编译安装配置LAMP环境详解

    CentOS 7.4搭建LAMP,LAMP:Linux.Apache.MySQL.PHP. 目录:第一部分 准备工作第二部分 安装Apache服务第三部分 安装MySQL服务第四部分 搭建PHP运行环 ...

  7. Apache web服务器(LAMP架构)

    1.apache介绍 1).世界上使用率最高的网站服务器,最高时可达70%:官方网站:apache.org 2).http 超文本协议 HTML 超文本标记语言 3).URL 统一资源定位符 http ...

  8. 在CentOS6上编译安装实现LAMP(php-modules)+phpMyAdmin安装过程全记录

    php与apache协作有三种模式:CGI.modules.FastCGI. 在CGI模式下,用户请求php文件时,apache会启动响应进程,调用php处理器处理请求,然后将结果返回给客户端.用户响 ...

  9. CentOS 5.9裸机编译安装搭建LAMP

    Linux系统:CentOS 5.9,查看CentOS版本,命令如下: [root@localhost /]# cat /etc/redhat-release CentOS release 5.9 ( ...

随机推荐

  1. oozie 启动过程中--- Existing PID file found during start. Removing/clearing stale PID file.

    如果oozie使用kill -9 暴力杀死了tomcat,再启动的时候,会出问题,需要删除tomcat的pid文件 彻底停止oozie的tomcat的进程,然后删除pid文件 rm -rf  /exp ...

  2. poj1015 Jury Compromise[背包]

    每一件物品有两个属性.朴素思想是把这两种属性都设计到状态里,但空间爆炸.又因为这两个属性相互间存在制约关系(差的绝对值最小),不妨把答案设计入状态中,设$f[i][j]$选$i$个人,两者之差$j$. ...

  3. 手摸手带你实现 小游戏<别踩白块儿 -- 内有游戏链接>

    别踩白块儿 使用(白鹭引擎)Egret编写的游戏 游戏地址 准备工作 了解白鹭引擎 并安装编写工具 安装游戏引擎 安装Egret Wing3 创建项目 创建项目可以选择不同版本的引擎,创建成功之后还可 ...

  4. IPC 进程间通信方式——消息队列

    消息队列 消息队列是内核中的一个链表 用户进程将数据传输到内核后,内核重新添加一些如用户ID.组ID.读写进程的ID和优先级等相关信息后并打包成一个数据包称为消息 允许一个或多个进程往消息队列中读写消 ...

  5. [大数据] hadoop伪分布式安装

    注意:节点主机的hostname不要带"_"等字符,否则会报错. 一.安装jdk rpm -i jdk-7u80-linux-x64.rpm 配置java环境变量: vi + /e ...

  6. PHP关于对象访问静态方法、属性等问题

    为何有这样的问题呢?源自一段代码,如下: class A { // public static $name = 'wangyumeidsb'; public $name = 'woaini'; pub ...

  7. [模板] KMP算法/Border

    KMP 算法 KMP (Knuth-Morris-Pratt) 算法是一种在线性时间内匹配文本串和模式串的算法. 称字符串的 Border 集合为 \[ \operatorname {Border} ...

  8. 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 ...

  9. 最小生成树问题:kruskal算法

    struct edge(int u,v,cost;};bool comp(const edge& e1,const edge& e2){    return e1.cost<e2 ...

  10. TTTTTTTTTTTTTT CF 645D 点的优先级

    题意:给你n个节点,m对优先级关系,a[i] b[i]代表a[i]的优先级比b[i]高,现在问你至少需要前多少对关系就能确定所有节点的优先级: #include <iostream> #i ...