1、从源码安装 apache
=================================================================
apache
-----------------------------------------------------------------
./configure --prefix=/usr/local/httpd --enable-mods-shared=all --enable-so --enable-deflate --enable-rewrite --enable-info

make

make install

# 查看配置参数
httpd -V

2、源码安装 php
=================================================================
php
-----------------------------------------------------------------
dependences:
libxml2.x86_64
libxml2-devel.x86_64
./configure --prefix=/usr/local/php-5.2.17 --with-apxs2=/usr/local/httpd-2.2.22/bin/apxs --with-mysql=shared,/usr --with-zlib-dir --with-mysqli=/usr/lib64/mysql/mysql_config --libdir=/usr/lib64 --with-libdir=lib64 --with-pdo-mysql --with-curl --with-gd --with-config-file-path=conf/php.ini

make && make install

编译php生成扩展

进入php源程序目录中的ext目录中,这里存放着各个扩展模块的源代码,选择你需要的模块,比如curl模块:
     cd curl
     执行phpize生成编译文件,phpize在PHP安装目录的bin目录下
     /usr/local/php5/bin/phpize
     运行时,可能会报错:Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF
                                 environment variable is set correctly and then rerun this script.“,需要安装autoconf:
     yum install autoconf(RedHat或者CentOS)、apt-get install autoconf(Ubuntu Linux)

生成配置文件,并编译生成模块:

/usr/local/php-5.2.17/bin/phpize
     ./configure --enable-shared --with-eaccelerator-info --with-php-config=/usr/local/php-5.2.17/bin/php-config  
     make && make install  

这样,curl.so就被复制到PHP对应目录(如:/usr/local/php5/lib/php/extensions/no-debug-non-zts-20090626/)

3、源码编译 nginx

=================================================================
configure with nginx:
-----------------------------------------------------------------
./configure configure arguments: --prefix=/usr/local/nginx-1.2.6 --with-pcre=/app/temp/pcre-8.32 --with-debug --with-http_realip_module --with-poll_module --with-ipv6 --with-http_ssl_module --with-http_geoip_module --with-http_gzip_static_module --with-mail --with-mail_ssl_module --with-http_stub_status_module --add-module=/NGX_CONCAT_SOURCE_FILE_PATH

make && make install

# 查看配置参数
/usr/local/nginx-1.2.8/sbin/nginx -V

4、安装 apache rpaf 模块

=================================================================
安装 mod_rpaf 模块
-----------------------------------------------------------------
安装
tar zxvf mod_rpaf-0.6.tar.gz
cd mod_rpaf-0.6
/usr/local/www/apache/bin/apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c
接着在 httpd.conf 中添加
LoadModule rpaf_module modules/mod_rpaf-2.0.so
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 127.0.0.1 # 填写Nginx的的ip
RPAFheader X-Forwarded-For
这样就可以获取客户端访问的真实IP了

构建linux下的web服务器相关推荐

  1. Linux下的WEB服务器的搭建实战

    Linux下的web服务器搭建详细过程 每次搭建一个服务器之前,比如MySQL.DNS.WEB等首先要挂载磁盘目录文件 挂载就是当要使用某个设备时(例如光盘或软盘),必须先将它们对应放到 Linux ...

  2. Linux下JAVA WEB服务器的搭建一(JDK\MYSQL\TOMCAT)

    转自:Linux下JAVA WEB服务器的搭建一(JDK\MYSQL\TOMCAT),更优阅读体验http://www.kongzid.com/ 目录 1.JDK1.8的安装配置 1.1 环境检查 1 ...

  3. Linux下进行Web服务器压力(并发)测试工具http_load、webbench、ab、Siege、autobench简单使用教程(转)...

    一.http_load 程序非常小,解压后也不到100K http_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载.但是它不同于大多数压力测试工 具,它可以以一个单一的进程运行,一般 ...

  4. Linux下小型web服务器boa的使用

    boa是一个小型的web服务器,可以用于多种平台,在嵌入式中比较常见. boa的官方网站为www.boa.org,可以在上面下载最新版本的boa:boa-0.94.13.tar.gz (不过这个&qu ...

  5. linux socket编程web服务器实现报文解析,[Socket][网络编程]程序范例:Linux下连接WEB服务器...

    昨天试着在Ubuntu 下用C语言写了一个客户端,用来向WEB服务器上交请求并取回响应报文. 同时,这也是一个通用的基于IPv4的客户端程序例程. [cpp] /* socket test on li ...

  6. Linux下java web服务器搭建(JDK1.6、MySQL5.1、Apache2.2+2...

    2019独角兽企业重金招聘Python工程师标准>>> 系统:Red Hat Enterprise Linux 5 32位(自带Httpd) 软件准备: 1. jdk-6u31-li ...

  7. Linux下Apache Web服务器的安装与配置

    1.Apache Web服务器简述     Web服务是目前Internet应用最流行.最受欢迎的服务之一,Linux平台使用最广泛的Web服务器是Apache,它是目前性能最优秀.最稳定的Web服务 ...

  8. Linux下的web服务器搭建

    Web服务器:专门处理HTTP请求的服务器,常被称为Web服务器. 有时间好好研究这个. 另外可以参照  mac/linux安装php那篇一起看看 零. 一.httpd简介(也可称为apache) 常 ...

  9. linux下的web服务器压力测试工具之ab

    介绍 ab是apache附带的一款压力测试工具,它非常容易使用,ab可以直接在Web服务器本地发起测试请求.这至关重要,因为我们希望测试的服务器的处理时间,而不包含数据的网络传输时间以及用户PC本地的 ...

最新文章

  1. GA(遗传算法)的Matlab程序原理(from:六分之一工作室)
  2. 人工智能的发展,需要遵守的四个AI伦理原则
  3. zookeeper实现分布式锁的原理及具体使用案例
  4. QT右键点击添加库不响应的解决办法
  5. 月薪2500到年薪20万+,阿迪经历了些什么?
  6. 【MyBatis笔记】04-插入操作更新操作删除操作
  7. ResourceUtils读取properties文件
  8. linux+redhat+5下载地址,Redhat_Linux5下载地址集锦最终.docx
  9. 2008铁路旅客列车时刻表_重要消息!唐山站100多列旅客列车调整,12月30日起开始实行...
  10. java 替换pdf 文本_java 查找替换pdf中的指定文本
  11. 随机出题在线考试系统php_在线考试系统怎么实现自制题库随机出题
  12. 为虚幻4安装VS2019
  13. 高速下载百度网盘资料(Tampermonkey+百度网盘直链下载助手+xdown)
  14. 2018年银行业网络金融黑产分析报告
  15. 计算机教师的人生格言,教师人生格言大全
  16. 幼儿园计算机基础知识,幼儿园大班计算机教学计划
  17. [转]经验之谈:成为Debian Maintainer前要做的事
  18. 论文学习笔记——弱监督语义分割(Learning Integral Objects with Intra-Class Discriminator for Weakly-Supervised Sema)
  19. android应用商店app图标大小,各大应用商店APP发布截图尺寸
  20. 当你学会炒菜的时候,你就学会了大数据

热门文章

  1. iOS开发小技巧--利用苹果官方API播放视频(方法已经过时,了解一下)
  2. 苹果官方 Crash文件分析方法 (iOS系统Crash文件分析方法)
  3. tableview 展开
  4. MySQL通讯协议研究2(登录认证)
  5. nagios全攻略(三)----使用插件监控更多信息
  6. VMware 收购 Kubernetes 初创公司 Heptio
  7. Exchange Server 2007 移动邮件
  8. FreeRTOS 临界段和开关中断
  9. SQL 解决从分组数据中总是挑选第一条数据的问题
  10. Workout Wednesday Redux (2017 Week 3)