<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Apache on 七三的小站</title>
        <link>https://www.bg7pbp.com/tags/apache/</link>
        <description>Recent content in Apache on 七三的小站</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh-cn</language>
        <copyright>WangYan</copyright>
        <lastBuildDate>Tue, 12 Aug 2014 00:00:00 +0800</lastBuildDate><atom:link href="https://www.bg7pbp.com/tags/apache/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>Apache2.4 访问控制</title>
        <link>https://www.bg7pbp.com/p/apache-access-control/</link>
        <pubDate>Tue, 12 Aug 2014 00:00:00 +0800</pubDate>
        
        <guid>https://www.bg7pbp.com/p/apache-access-control/</guid>
        <description>&lt;h2 id=&#34;目录&#34;&gt;目录  &lt;!-- omit from toc --&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%B8%80%E8%AE%BF%E9%97%AE%E6%8E%A7%E5%88%B6&#34;&gt;一、访问控制&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#%E5%AE%9E%E4%BE%8B1%E6%89%80%E6%9C%89%E8%AF%B7%E6%B1%82%E9%83%BD%E8%A2%AB%E6%8B%92%E7%BB%9D&#34;&gt;实例1：所有请求都被拒绝&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E5%AE%9E%E4%BE%8B2%E6%89%80%E6%9C%89%E8%AF%B7%E6%B1%82%E9%83%BD%E8%A2%AB%E5%85%81%E8%AE%B8&#34;&gt;实例2：所有请求都被允许&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E5%AE%9E%E4%BE%8B3exampleorg%E6%89%80%E6%9C%89%E8%AF%B7%E6%B1%82%E9%83%BD%E8%A2%AB%E5%85%81%E8%AE%B8%E5%85%B6%E4%BB%96%E6%8B%92%E7%BB%9D&#34;&gt;实例3：example.org所有请求都被允许，其他拒绝&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%BA%8Capache-require-%E6%8C%87%E4%BB%A4&#34;&gt;二、Apache Require 指令&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;本文翻译自官方文档：&lt;a href=&#34;http://httpd.apache.org/docs/2.4/upgrading.html&#34;&gt;《Upgrading to 2.4 from 2.2》&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;一访问控制&#34;&gt;一、访问控制&lt;/h2&gt;
&lt;p&gt;在Apache2.2版本中，访问控制是基于客户端的主机名、IP地址以及客户端请求中的其他特征，使用Order(排序), Allow(允许), Deny(拒绝),Satisfy(满足)指令来实现。&lt;/p&gt;
&lt;p&gt;在Apache2.4版本中，使用mod_authz_host这个新的模块，来实现访问控制，其他授权检查也以同样的方式来完成。旧的访问控制语句应当被新的授权认证机制所取代，即便Apache已经提供了mod_access_compat这一新模块来兼容旧语句。&lt;/p&gt;
&lt;p&gt;这里有一些实例，用新方法取代旧语句实现相同的访问控制&lt;/p&gt;
&lt;h3 id=&#34;实例1所有请求都被拒绝&#34;&gt;实例1：所有请求都被拒绝&lt;/h3&gt;
&lt;p&gt;Apache2.2 配置:&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Order deny,allow &lt;span class=&#34;c1&#34;&gt;#排序，先拒绝后允许&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Deny from all &lt;span class=&#34;c1&#34;&gt;#拒绝所有&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Apache2.4 配置:&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Require all denied &lt;span class=&#34;c1&#34;&gt;#拒绝所有&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;实例2所有请求都被允许&#34;&gt;实例2：所有请求都被允许&lt;/h3&gt;
&lt;p&gt;Apache2.2 配置:&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Order allow,deny &lt;span class=&#34;c1&#34;&gt;#排序，先允许后拒绝&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Allow from all &lt;span class=&#34;c1&#34;&gt;#允许所有&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Apache2.4 配置:&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Require all granted &lt;span class=&#34;c1&#34;&gt;#拒绝所有&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;实例3exampleorg所有请求都被允许其他拒绝&#34;&gt;实例3：example.org所有请求都被允许，其他拒绝&lt;/h3&gt;
&lt;p&gt;Apache2.2 配置:&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Order Deny,Allow &lt;span class=&#34;c1&#34;&gt;#排序，先拒绝后允许&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Deny from all &lt;span class=&#34;c1&#34;&gt;#拒绝所有&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Allow from example.org &lt;span class=&#34;c1&#34;&gt;#允许example.org&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Apache2.4 配置:&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  Require host example.org &lt;span class=&#34;c1&#34;&gt;#拒绝所有&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;二apache-require-指令&#34;&gt;二、Apache Require 指令&lt;/h2&gt;
&lt;p&gt;了解更多require指令用法：&lt;a href=&#34;http://httpd.apache.org/docs/2.4/mod/mod_authz_core.html#require&#34;&gt;《Apache Module mod_authz_core》&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;附：常见访问控制指令&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require all granted &lt;span class=&#34;c1&#34;&gt;#允许所有&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require all denied &lt;span class=&#34;c1&#34;&gt;#拒绝所有&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require env env-var &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;env-var&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ... &lt;span class=&#34;c1&#34;&gt;#允许，匹配环境变量中任意一个&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require method http-method &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;http-method&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ... &lt;span class=&#34;c1&#34;&gt;#允许，特定的HTTP方法&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require expr expression &lt;span class=&#34;c1&#34;&gt;#允许，表达式为true&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require user userid &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; userid &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ... &lt;span class=&#34;c1&#34;&gt;#允许，特定用户&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require group group-name &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;group-name&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; ... &lt;span class=&#34;c1&#34;&gt;#允许，特定用户组&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require valid-user &lt;span class=&#34;c1&#34;&gt;# #允许，有效用户&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Require ip &lt;span class=&#34;m&#34;&gt;10&lt;/span&gt; 172.20 192.168.2 &lt;span class=&#34;c1&#34;&gt;#允许 特定IP&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
        </item>
        <item>
        <title>配置Nginx前端Apache后端服务器</title>
        <link>https://www.bg7pbp.com/p/nginx-apache-reverse-proxy/</link>
        <pubDate>Thu, 27 Jan 2011 00:00:00 +0800</pubDate>
        
        <guid>https://www.bg7pbp.com/p/nginx-apache-reverse-proxy/</guid>
        <description>&lt;h2 id=&#34;目录&#34;&gt;目录  &lt;!-- omit from toc --&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%B8%80%E5%9F%BA%E7%A1%80%E7%9F%A5%E8%AF%86&#34;&gt;一、基础知识&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#11%E5%8F%8D%E5%90%91%E4%BB%A3%E7%90%86%E8%BF%87%E7%A8%8B&#34;&gt;1.1、反向代理过程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#12nginx-location-%E5%9F%BA%E7%A1%80&#34;&gt;1.2、Nginx location 基础&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%BA%8C%E7%BC%96%E8%BE%91-nginx-%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6&#34;&gt;二、编辑 Nginx 配置文件&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#21%E6%B7%BB%E5%8A%A0proxy_set_header%E6%8C%87%E4%BB%A4&#34;&gt;2.1、添加&amp;quot;proxy_set_header&amp;quot;指令&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#22%E6%B7%BB%E5%8A%A0proxy_pass%E6%8C%87%E4%BB%A4&#34;&gt;2.2、添加&amp;quot;proxy_pass&amp;quot;指令&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#%E6%96%B9%E6%B3%95%E4%B8%80&#34;&gt;方法一：&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E6%96%B9%E6%B3%95%E4%BA%8C&#34;&gt;方法二：&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#23%E6%B7%BB%E5%8A%A0%E9%AB%98%E7%BA%A7%E9%80%89%E9%A1%B9%E9%80%89%E5%81%9A&#34;&gt;2.3、添加高级选项（选做）&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%B8%89%E7%BC%96%E8%BE%91-apache-%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%E9%80%89%E5%81%9A&#34;&gt;三、编辑 Apache 配置文件（选做）&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;曾经对host2ez主机，它用的是nginx，但却能完美兼容apache感到很困惑，一番折腾后知道，原来只要由Nginx做前端处理静态文件，Apache做后端服务器即可，代价是可怜的内存又少了&amp;hellip;&lt;/p&gt;
&lt;h2 id=&#34;一基础知识&#34;&gt;一、基础知识&lt;/h2&gt;
&lt;h3 id=&#34;11反向代理过程&#34;&gt;1.1、反向代理过程&lt;/h3&gt;
&lt;p&gt;Nginx前端，Apache后端过程其实很简单，首先用户访问的是80端口的nginx，然后nginx将静态内容留给自己，其余的转发给非80端口的apache，apache处理完毕后再回传给nginx。&lt;/p&gt;
&lt;h3 id=&#34;12nginx-location-基础&#34;&gt;1.2、Nginx location 基础&lt;/h3&gt;
&lt;p&gt;详细见《Nginx Location 指令基础》，在不同的 Location 位置添加反向代理，Nginx 前端就充当了完全不一样的角色。&lt;/p&gt;
&lt;h2 id=&#34;二编辑-nginx-配置文件&#34;&gt;二、编辑 Nginx 配置文件&lt;/h2&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim /usr/local/nginx/conf/nginx.conf&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;21添加proxy_set_header指令&#34;&gt;2.1、添加&amp;quot;proxy_set_header&amp;quot;指令&lt;/h3&gt;
&lt;p&gt;编辑Nginx配置文件，在&amp;quot;http&amp;quot;字段内添加相应代码，发送发送真实IP到后端。&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim /usr/local/nginx/conf/nginx.conf &lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 向后端服务器发起请求时添加指定的header头信息&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;proxy_set_header  Host &lt;span class=&#34;nv&#34;&gt;$host&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 向后端服务器发送真实 IP&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;proxy_set_header  X-Real-IP &lt;span class=&#34;nv&#34;&gt;$remote_addr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#让后端如php能直接通过变量获取真实IP&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;proxy_set_header  X-Forwarded-For &lt;span class=&#34;nv&#34;&gt;$proxy_add_x_forwarded_for&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;22添加proxy_pass指令&#34;&gt;2.2、添加&amp;quot;proxy_pass&amp;quot;指令&lt;/h3&gt;
&lt;p&gt;在相应 ”location&amp;quot; 字段添加如下反向代理语句。这部分是难点，也是国内教程都没有提及的地方。&lt;/p&gt;
&lt;h4 id=&#34;方法一&#34;&gt;方法一：&lt;/h4&gt;
&lt;p&gt;将所有请求都转发给后端 apache 处理，但由于 &amp;ldquo;~*&amp;rdquo; 优先级高于 &amp;ldquo;/&amp;rdquo; ，所以图片、JS、CSS例外，&amp;ldquo;expires&amp;rdquo; 用于设置缓存时间。&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;location / &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    proxy_pass  http://127.0.0.1:8080&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;location ~* &lt;span class=&#34;se&#34;&gt;\.&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;jpg&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;jpeg&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;gif&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;png&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;$ &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    access_log  off&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    expires  30d&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;location ~* &lt;span class=&#34;se&#34;&gt;\.&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;js&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;css&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;$ &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    access_log  off&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    expires  1d&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;方法二&#34;&gt;方法二：&lt;/h4&gt;
&lt;p&gt;只将.php后缀的文件，交由后端 apache 处理&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;location ~ &lt;span class=&#34;se&#34;&gt;\.&lt;/span&gt;php$ &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    proxy_pass  http://127.0.0.1:8080&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;23添加高级选项选做&#34;&gt;2.3、添加高级选项（选做）&lt;/h3&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#请求连接后端服务器超时时间。即在规定时间，后端必须响应前端握手请求。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;proxy_connect_timeout  30&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#后端服务器响应时间。即连接成功，在后端排队等候处理不能超过的时间。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;proxy_read_timeout  60&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#后端数据回传时间。即在规定时间，后端服务器必须将所有数据回传完毕。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;proxy_send_timeout  30&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#从后端服务器读取的头信息的缓冲区大小。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;proxy_buffer_size  4k&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#从后端服务器读取的头信息的缓冲区数目和大小&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;proxy_buffers  &lt;span class=&#34;m&#34;&gt;4&lt;/span&gt; 32k&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;如果服务器繁忙，可申请的proxy_buffers大小
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;proxy_busy_buffers_size  64k&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#代理缓存临时文件大小&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;proxy_temp_file_write_size  64k&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#代理最大缓存临时文件大小&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;proxy_max_temp_file_size  128m&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;三编辑-apache-配置文件选做&#34;&gt;三、编辑 Apache 配置文件（选做）&lt;/h2&gt;
&lt;p&gt;注意：mod_rpaf 模块不是必须安装，除非你需要开启 Apache 日志，但有多此一举之嫌，因为已经有 Nginx 日志了，再开 Apache 日志话就出现重复了。&lt;/p&gt;
&lt;p&gt;Apache rpaf 模块作用是获取Nginx转发过来的真实IP，否则在Apache日子中来访IP全部为127.0.0.1。&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tar zxvf mod_rpaf-0.6.tar.gz
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; mod_rpaf-0.6
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/usr/local/www/apache/bin/apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c &lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim /usr/local/apache/conf/httpd.conf LoadModule rpaf_module modules/mod_rpaf-2.0.so
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;RPAFenable On
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;RPAFproxy_ips 127.0.0.1
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;RPAFsethostname On
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;RPAFheader X-Forwarded-For &lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
        </item>
        <item>
        <title>Apache2.2 使用 FastCGI 模块方法</title>
        <link>https://www.bg7pbp.com/p/apache-fastcgi-configuration/</link>
        <pubDate>Tue, 25 Jan 2011 00:00:00 +0800</pubDate>
        
        <guid>https://www.bg7pbp.com/p/apache-fastcgi-configuration/</guid>
        <description>&lt;h2 id=&#34;目录&#34;&gt;目录  &lt;!-- omit from toc --&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%B8%80%E7%BC%96%E8%AF%91%E4%B8%8E%E5%AE%89%E8%A3%85-fastcgi-%E6%A8%A1%E5%9D%97&#34;&gt;一、编译与安装 FastCGI 模块&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%BA%8C%E7%BC%96%E8%BE%91-apache22-%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6&#34;&gt;二、编辑 Apache2.2 配置文件&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#21%E8%BD%BD%E5%85%A5fastcgi%E6%A8%A1%E5%9D%97&#34;&gt;2.1、载入FastCGI模块&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#22%E8%AE%BE%E7%BD%AEphp%E6%96%87%E4%BB%B6%E5%90%8E%E7%BC%80%E5%8F%8A%E8%A7%A3%E6%9E%90%E5%99%A8&#34;&gt;2.2、设置php文件后缀及解析器&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#23%E6%B7%BB%E5%8A%A0fastcgiexternalserver%E5%8F%8A%E7%9B%AE%E5%BD%95%E5%B1%9E%E6%80%A7&#34;&gt;2.3、添加FastCGIExternalServer及目录属性&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%B8%89%E4%BD%9C%E7%94%A8%E5%8E%9F%E7%90%86&#34;&gt;三、作用原理&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;最新版的 php 5.3.4 已经默认启用 fastcgi ，此前已写过《Linux 从源码编译安装 PHP 5.3.4》，但是对于 Apache2.2 又该如何与 php 5.3.4 （ FastCGI 模式运行 ）相结合呢？&lt;/p&gt;
&lt;p&gt;目前我所知在Linux中，Apache2.2 要运行 php 脚本，有两中方法，一是使用mod_php 模块方式，另外一种就是使用FastCGI模块的的方式。&lt;/p&gt;
&lt;h2 id=&#34;一编译与安装-fastcgi-模块&#34;&gt;一、编译与安装 FastCGI 模块&lt;/h2&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;wget http://www.fastcgi.com/dist/mod_fastcgi-2.4.6.tar.gz
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tar -zxf mod_fastcgi-2.4.6.tar.gz
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; mod_fastcgi-2.4.6
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cp Makefile.AP2 Makefile
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;make &lt;span class=&#34;nv&#34;&gt;top_dir&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/usr/local/apache
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;make install &lt;span class=&#34;nv&#34;&gt;top_dir&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/usr/local/apache&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;二编辑-apache22-配置文件&#34;&gt;二、编辑 Apache2.2 配置文件&lt;/h2&gt;
&lt;h3 id=&#34;21载入fastcgi模块&#34;&gt;2.1、载入FastCGI模块&lt;/h3&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim /usr/local/apache/conf/httpd.conf &lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LoadModule fastcgi_module modules/mod_fastcgi.so&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;22设置php文件后缀及解析器&#34;&gt;2.2、设置php文件后缀及解析器&lt;/h3&gt;
&lt;p&gt;查找并在 &amp;ldquo;IfModule mime_module&amp;rdquo; 内添加下面代码&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;IfModule mime_module&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;AddHandler php-fastcgi .php 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Action php-fastcgi /fcgi-bin/php-fpm
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ScriptAlias /fcgi-bin/ /var/fcgi-bin/
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;/IfModule&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;23添加fastcgiexternalserver及目录属性&#34;&gt;2.3、添加FastCGIExternalServer及目录属性&lt;/h3&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;IfModule fastcgi_module&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    FastCGIExternalServer /var/fcgi-bin/php-fpm -host 127.0.0.1:9000
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;/IfModule&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Directory &lt;span class=&#34;s2&#34;&gt;&amp;#34;/var/fcgi-bin/&amp;#34;&lt;/span&gt;&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Options none
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Order allow,deny
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Allow from all
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;/Directory&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;三作用原理&#34;&gt;三、作用原理&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;首先对 .php 后缀的文件使用 php-fastcgi (可随便起名)解析器。&lt;/li&gt;
&lt;li&gt;然后发现php-fastcgi不是内置的解析器。&lt;/li&gt;
&lt;li&gt;于是使用 action 指令定义该解析器，它实际上是 /var/php-fastcgi/ 目录下的一个叫 php-fpm 虚拟的文件。&lt;/li&gt;
&lt;li&gt;但是 apache 并不知道 /var/php-fastcgi/ 目录下的文件是需要执行的，必须用 ScriptAlias 定义个别名 /fcgi-bin/ 他实际指向/var/fcgi-bin/。（根据上文，ScriptAlias 别名内的文件会被执行，所以上面的action只能为 /fcgi-bin/php-fpm 而不能/var/fcgi-bin/php-fpm&lt;/li&gt;
&lt;li&gt;最后哪个虚拟文件其实就是127.0.0.1:9000了（必须全路径，不能使用/fcgi-bin/php-fpm）&lt;/li&gt;
&lt;/ol&gt;
</description>
        </item>
        <item>
        <title>Apache2.2 内置CGI 模块使用方法</title>
        <link>https://www.bg7pbp.com/p/apache-cgi-configuration/</link>
        <pubDate>Mon, 24 Jan 2011 00:00:00 +0800</pubDate>
        
        <guid>https://www.bg7pbp.com/p/apache-cgi-configuration/</guid>
        <description>&lt;h2 id=&#34;目录&#34;&gt;目录  &lt;!-- omit from toc --&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%B8%80%E5%9F%BA%E7%A1%80%E7%9F%A5%E8%AF%86&#34;&gt;一、基础知识&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#11%E4%BB%80%E4%B9%88%E6%98%AF-cgi&#34;&gt;1.1、什么是 CGI？&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#12%E4%BB%80%E4%B9%88%E6%98%AF-apache-pma&#34;&gt;1.2、什么是 Apache PMA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#13mod_cgi-%E5%92%8C-mod_cgid-%E5%8C%BA%E5%88%AB&#34;&gt;1.3、mod_cgi 和 mod_cgid 区别&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%BA%8C%E6%89%A7%E8%A1%8C-cgi-%E7%9A%84%E6%96%B9%E6%B3%95&#34;&gt;二、执行 CGI 的方法&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#21%E6%8C%87%E5%AE%9Ascriptalias%E7%9B%AE%E5%BD%95%E4%B8%BAcgi%E6%96%87%E4%BB%B6%E7%9B%AE%E5%BD%95&#34;&gt;2.1、指定ScriptAlias目录为CGI文件目录&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#22%E6%8C%87%E5%AE%9A%E7%89%B9%E5%AE%9A%E6%96%87%E4%BB%B6%E5%90%8E%E7%BC%80%E4%B8%BAcgi%E6%96%87%E4%BB%B6&#34;&gt;2.2、指定特定文件后缀为CGI文件&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;为什么买的虚拟主机的 &amp;ldquo;public_html&amp;rdquo; 目录下总有那么一个空 &amp;ldquo;cgi-bin&amp;rdquo; 目录？再者为什么我将 cgi 文件不放刚才那个&amp;quot;cgi-bin&amp;quot; 目录下也同样也能运行？什么时候需要用到 &lt;a href=&#34;http://wangyan.org/docs/apache/mod/mod_mime.html#addtype&#34;&gt;AddType 指令&lt;/a&gt;？&lt;/p&gt;
&lt;h2 id=&#34;一基础知识&#34;&gt;一、基础知识&lt;/h2&gt;
&lt;h3 id=&#34;11什么是-cgi&#34;&gt;1.1、什么是 CGI？&lt;/h3&gt;
&lt;p&gt;简单说 CGI 是一种口，所有对 CGI 文件的访问请求，Web 服务器必须先作执行处理而不能直接把内容返回浏览器。&lt;/p&gt;
&lt;h3 id=&#34;12什么是-apache-pma&#34;&gt;1.2、什么是 Apache PMA&lt;/h3&gt;
&lt;p&gt;Apache PMA，即多路处理模块，详细介绍见 ，&lt;a href=&#34;http://wangyan.org/docs/apache/mpm.html&#34;&gt;apache2.2 官方文档&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;apache2.2 默认使用 prefork ，如果需要选择 worker ，那么必须在apache2.2 编译时使用“&amp;ndash;with-mpm=” 选项静态编译进核心。可通过&amp;quot;httpd -l&amp;quot;查询当前的PMA模式。&lt;/p&gt;
&lt;p&gt;prefork 采用进程的方式，Worker 采用进程与线程混合方式，海量的请求时，prefork 较快但耗资源，worker 相反。&lt;/p&gt;
&lt;h3 id=&#34;13mod_cgi-和-mod_cgid-区别&#34;&gt;1.3、mod_cgi 和 mod_cgid 区别&lt;/h3&gt;
&lt;p&gt;Apache PMA 为 prefork 时使用mod_cgi模块，PMA 为worker 时使用mod_cgid模块。详细介绍见文档 &lt;a href=&#34;http://wangyan.org/docs/apache/mod/mod_cgi.html&#34;&gt;Apache Module mod_cgi&lt;/a&gt;、&lt;a href=&#34;http://wangyan.org/docs/apache/mod/mod_cgid.html&#34;&gt;Apache Module mod_cgid&lt;/a&gt;。即在用户层面，这两个模块本质上是相同的。&lt;/p&gt;
&lt;h2 id=&#34;二执行-cgi-的方法&#34;&gt;二、执行 CGI 的方法&lt;/h2&gt;
&lt;h3 id=&#34;21指定scriptalias目录为cgi文件目录&#34;&gt;2.1、指定ScriptAlias目录为CGI文件目录&lt;/h3&gt;
&lt;p&gt;在 ScriptAlias 目录的文件均被认为是 CGI i脚本，另外要设置该目录属性，但无需添加 ExecCGI 选项。&lt;/p&gt;
&lt;p&gt;指定目录别名及路径，注意是“ScriptAlias”而不是“Alias”&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ScriptAlias /cgi-bin/ &lt;span class=&#34;s2&#34;&gt;&amp;#34;/usr/local/apache/cgi-bin/&amp;#34;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;设置该目录属性，绝对路径，千万不要漏了 &amp;ldquo;Allow from all&amp;rdquo; 切记！&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Directory &lt;span class=&#34;s2&#34;&gt;&amp;#34;/usr/local/apache/cgi-bin&amp;#34;&lt;/span&gt;&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    AllowOverride None
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Options None
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Order allow,deny
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Allow from all
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;/Directory&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;22指定特定文件后缀为cgi文件&#34;&gt;2.2、指定特定文件后缀为CGI文件&lt;/h3&gt;
&lt;p&gt;在 ScriptAlias 目录的文件均被认为是 CGI i脚本，那么目录之外是否可以？可以！但要指定后缀、设置目录属性，且启用ExecCGI选项。&lt;/p&gt;
&lt;p&gt;指定后缀有两种方法，一是定义MIME类型为application/x-httpd-cgi，二是使用 AddHandler 或 SetHandler 指令激活内置的 cgi-script 处理器&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;AddType application/x-httpd-cgi .cgi &lt;span class=&#34;c1&#34;&gt;#方法一&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;AddHandler cgi-script .cgi &lt;span class=&#34;c1&#34;&gt;#方法二&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;设置CGI的目录属性，必须在Options指令中启用ExecCGI选项&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Directory &lt;span class=&#34;s2&#34;&gt;&amp;#34;/usr/local/apache/htdocs/cgi-bin&amp;#34;&lt;/span&gt;&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Options ExecCGI
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;AllowOverride None
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Order allow,deny
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Allow from all
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;/Directory&amp;gt; &lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
</description>
        </item>
        <item>
        <title>Apache 添加 OpenSSL 支持</title>
        <link>https://www.bg7pbp.com/p/apache-ssl-configuration/</link>
        <pubDate>Sat, 15 Jan 2011 00:00:00 +0800</pubDate>
        
        <guid>https://www.bg7pbp.com/p/apache-ssl-configuration/</guid>
        <description>&lt;h2 id=&#34;目录&#34;&gt;目录  &lt;!-- omit from toc --&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%B8%80-%E5%8A%A0%E8%BD%BD-apache-ssl-%E6%A8%A1%E5%9D%97&#34;&gt;一、 加载 Apache SSL 模块&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%BA%8C%E7%BC%96%E8%BE%91-apache-ssl-%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6&#34;&gt;二、编辑 Apache SSL 配置文件&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#%E4%B8%89firefox-%E6%B5%8F%E8%A7%88%E5%99%A8%E8%AE%BE%E7%BD%AE&#34;&gt;三、Firefox 浏览器设置&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;#41%E5%AF%BC%E5%85%A5ca%E6%A0%B9%E8%AF%81%E4%B9%A6&#34;&gt;4.1、导入CA根证书&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;#42%E5%AF%BC%E5%85%A5%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%AF%81%E4%B9%A6&#34;&gt;4.2、导入服务器证书&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果前面的 &lt;a href=&#34;http://www.wangyan.cloud/ubuntu-ssl-install&#34;&gt;OpenSSL 安装&lt;/a&gt;、&lt;a href=&#34;http://www.wangyan.cloud/linux-ssl-certificate&#34;&gt;OpenSSL 证书生成&lt;/a&gt;、 &lt;a href=&#34;http://www.wangyan.cloud/vps-apache-install-from-source&#34;&gt;Apache 2 编译安装&lt;/a&gt;，一切都顺利的话，那么为要网站添加 SSL 支持，就显得想当容易了。&lt;/p&gt;
&lt;h2 id=&#34;一-加载-apache-ssl-模块&#34;&gt;一、 加载 Apache SSL 模块&lt;/h2&gt;
&lt;p&gt;如果已经安装过 apache2.2 ，现在需要额外添加 SSL 支持，那么你需要重新编译安装一次 apache2。&lt;/p&gt;
&lt;p&gt;编辑 httpd.conf，分别查找下面2行代码，并去掉前面的#&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim /usr/local/apache/conf/httpd.conf 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LoadModule ssl_module modules/mod_ssl.so
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Include conf/extra/httpd-ssl.conf&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;二编辑-apache-ssl-配置文件&#34;&gt;二、编辑 Apache SSL 配置文件&lt;/h2&gt;
&lt;p&gt;这只是一个最简单的配置文件，更多知识见&lt;a href=&#34;http://wangyan.org/docs/apache/ssl/index.html&#34;&gt;《Apache的SSL/TLS加密》&lt;/a&gt;、&lt;a href=&#34;http://www.sanzui.com/article/html/other/it/sanzui/1048.html&#34;&gt;《ssl.conf配置文件简要说明》&lt;/a&gt;、&lt;a href=&#34;http://lamp.linux.gov.cn/OpenSSL/OpenSSL_install_config.html&#34;&gt;《OpenSSL安装与配置指南》&lt;/a&gt;&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; /usr/local/apache/conf/extra/
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mv httpd-ssl.conf httpd-ssl.conf.bak &lt;span class=&#34;c1&#34;&gt;#备份&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim httpd-ssl.conf &lt;span class=&#34;c1&#34;&gt;#编辑，填入下面内容。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Listen &lt;span class=&#34;m&#34;&gt;443&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;VirtualHost *:443&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ServerAdmin you@example.com
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;DocumentRoot &lt;span class=&#34;s2&#34;&gt;&amp;#34;/usr/local/apache/htdocs&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ServerName wangyan.org
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ErrorLog &lt;span class=&#34;s2&#34;&gt;&amp;#34;/usr/local/apache/logs/error_log&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;SSLEngine on
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;SSLCertificateFile &lt;span class=&#34;s2&#34;&gt;&amp;#34;/usr/local/apache/conf/ssl.crt&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;SSLCertificateKeyFile &lt;span class=&#34;s2&#34;&gt;&amp;#34;/usr/local/apache/conf/ssl.key&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;/VirtualHost&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;三firefox-浏览器设置&#34;&gt;三、Firefox 浏览器设置&lt;/h2&gt;
&lt;p&gt;因为服务器证书是自建CA自签署的，所以浏览器会出现警告，比如Firefox警告“此连接是不受信任的”。&lt;/p&gt;
&lt;h3 id=&#34;41导入ca根证书&#34;&gt;4.1、导入CA根证书&lt;/h3&gt;
&lt;p&gt;Firefox，编辑&amp;ndash;首选项&amp;ndash;高级&amp;ndash;加密&amp;ndash;证书机构&amp;ndash;导入位于 /usr/local/ssl/demoCA/ucacert.pem&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;http://img.cdn.wangyan.cloud/l/lamp-ssl_4.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;http://img.cdn.wangyan.cloud/l/lamp-ssl_5.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;42导入服务器证书&#34;&gt;4.2、导入服务器证书&lt;/h3&gt;
&lt;p&gt;服务器选项卡，先导入/usr/local/ssl/demoCA/certs，然后编辑权限。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;http://img.cdn.wangyan.cloud/l/lamp-ssl_6.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;http://img.cdn.wangyan.cloud/l/lamp-ssl_7.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
</description>
        </item>
        <item>
        <title>Debian/Ubuntu 从源码编译安装 Apache 2</title>
        <link>https://www.bg7pbp.com/p/apache-install-source/</link>
        <pubDate>Fri, 14 Jan 2011 00:00:00 +0800</pubDate>
        
        <guid>https://www.bg7pbp.com/p/apache-install-source/</guid>
        <description>&lt;p&gt;在六大Web服务器软件，&lt;a href=&#34;http://httpd.apache.org/&#34;&gt;Apache&lt;/a&gt;、&lt;a href=&#34;http://www.iis.net/&#34;&gt;IIS&lt;/a&gt;、&lt;a href=&#34;http://www.lighttpd.net/&#34;&gt;Lighttpd&lt;/a&gt;、&lt;a href=&#34;http://nginx.org/&#34;&gt;Nginx&lt;/a&gt;、&lt;a href=&#34;http://www.litespeed.com&#34;&gt;LiteSpeed&lt;/a&gt;、&lt;a href=&#34;http://www.zeus.com/&#34;&gt;Zeus&lt;/a&gt;中，Apache 的世界使用量排名始终位居榜首，并且Apache 安装简单，参考资料众多，所以绝对是Web 服务器软件的首选。&lt;/p&gt;
&lt;h2 id=&#34;一准备工作&#34;&gt;一、准备工作&lt;/h2&gt;
&lt;p&gt;系统版本：Ubuntu-10.10-Server-I386&lt;/p&gt;
&lt;h3 id=&#34;11安装基础编译环境&#34;&gt;1.1、安装基础编译环境&lt;/h3&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;aptitude  install build-essential&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;12编译安装-zlib-库&#34;&gt;1.2、编译安装 Zlib 库&lt;/h3&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;text&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;wget http://zlib.net/zlib-1.2.5.tar.gz
tar -zxf zlib-1.2.5.tar.gz
cd zlib-1.2.5/
./configure --prefix=/usr/local
make &amp;amp;&amp;amp; make install&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;13安装-openssl-可选&#34;&gt;1.3、安装 OpenSSL （可选）&lt;/h3&gt;
&lt;p&gt;详细安装见 &lt;a href=&#34;http://www.wangyan.cloud/ubuntu-ssl-install&#34;&gt;《Linux 从源码编译安装 OpenSSL》&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;二编译安装-apache22&#34;&gt;二、编译安装 Apache2.2&lt;/h2&gt;
&lt;p&gt;这是 apache2.2 安装最大的难点，详细说明见 apache2.2 中文文档&lt;a href=&#34;http://wangyan.org/docs/apache/programs/configure.html&#34;&gt;配置源代码树&lt;/a&gt;部分，其中&lt;a href=&#34;http://wangyan.org/docs/apache/programs/configure.html#modoptions&#34;&gt;关于模块选项&lt;/a&gt;。&lt;/p&gt;
&lt;h3 id=&#34;我的选择-推荐&#34;&gt;我的选择 （推荐）&lt;/h3&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;wget http://www.apache.org/dist/httpd/httpd-2.2.17.tar.gz
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tar -zxf httpd-2.2.17.tar.gz
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; httpd-2.2.17/
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./configure  --prefix&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/usr/local/apache --enable-mods-shared&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;most --enable-ssl&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;shared --with-ssl&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/usr/local
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;make &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; make install&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;使用模块有两种方法：一是静态连接进核心，二是作为DSO模块动态加载&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;--enable-mods-shared&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;most 动态加载大部分模块
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;--enable-ssl&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;shared 动态加载 mod-ssl 模块
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;--enable-ssl&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;static 静态加载 mod-ssl 模块&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;另一种选择&#34;&gt;另一种选择&lt;/h3&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./configure  --enable-so --enable-rewrite --enable-ssl --with-ssl&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/usr/local&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;上面意思是将 mod_so 和 mo_rewrite、ssl 模块静态编译进 apache（还可以添加更多模块），mod_so 作用是允许 apache 以后运行时作为 DSO 模块动态加载，等同于 &amp;ndash;enable-modules=so&lt;/p&gt;
&lt;h2 id=&#34;三启动apache服务器&#34;&gt;三、启动Apache服务器&lt;/h2&gt;
&lt;p&gt;两种方法，可以使用 apachectl 或者 httpd 皆可。简单说 apachectl 是控制器，可以开、关、重启 apache ，是启动脚本。httpd 是后台守护进程，是apache的主程序。因此apachectl中必须指明httpd路径。（&lt;a href=&#34;http://wangyan.org/docs/apache2.2/programs/apachectl.html&#34;&gt;更多介绍&lt;/a&gt;）&lt;/p&gt;
&lt;p&gt;将apachectl加入系统变量中，即直接编辑/etc/environment文件，或者新建软链接。&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ln -s /usr/local/apache/bin/apachectl /usr/local/bin
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ln -s /usr/local/apache/bin/httpd /usr/local/bin&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apachectl -k start
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apachectl -k stop
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apachectl -k restart&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;四开机自动启动-apache&#34;&gt;四、开机自动启动 Apache&lt;/h2&gt;
&lt;p&gt;这里首先要清楚什么是运行级别，详细介绍见&lt;a href=&#34;http://www.wangyan.cloud/ubuntu-update-rc-d&#34;&gt;《Ubuntu系统update-rc.d命令详解》&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;方法一推荐&#34;&gt;方法一（推荐）&lt;/h3&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ln -s /usr/local/apache/bin/apachectl /etc/init.d/
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;update-rc.d apachectl defaults&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;方法二-图形界面&#34;&gt;方法二 （图形界面）&lt;/h3&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo install sysv-rc-conf
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo sysv-rc-conf //找到apachectl 将其2，3，4，5都选中&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;五其他&#34;&gt;五、其他&lt;/h2&gt;
&lt;h3 id=&#34;51apache-升级&#34;&gt;5.1、Apache 升级&lt;/h3&gt;
&lt;p&gt;除非有大的版本号变动，否则可按原编译选项重新编译安装即可。&lt;/p&gt;
&lt;div class=&#34;code-block&#34;&gt;
    &lt;div class=&#34;code-block__header&#34;&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--red&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--yellow&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__dot code-block__dot--green&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__spacer&#34;&gt;&lt;/span&gt;
        &lt;span class=&#34;code-block__title&#34;&gt;bash&lt;/span&gt;
    &lt;/div&gt;
    &lt;div class=&#34;code-block__body&#34;&gt;&lt;pre class=&#34;chroma&#34; tabindex=&#34;0&#34;&gt;&lt;code&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./configure  --prefix&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/usr/local/apache --enable-mods-shared&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;most --enable-ssl&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;shared --with-ssl&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/usr/local
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt; make &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; make install
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apachectl -k graceful-stop
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apachectl -k start&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;52apache-配置&#34;&gt;5.2、Apache 配置&lt;/h3&gt;
&lt;p&gt;详细 Apache2.2 配置见&lt;a href=&#34;http://www.wangyan.cloud/install-php-from-source.html&#34;&gt;《Linux 从源码编译安装及配置 PHP 5》&lt;/a&gt;&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
