apache的静态/动态编译在apache+php+mysql的应用

我想大家有不少都成功实现apache+php+mysql,网上的文章也有不少,但我发现不少文章都是抄来抄去,并且
没有说明白编译的方式,有的索性apache1.3的编译方法原封不动的搬过来套在apache2.0,显然误导一些菜鸟

我今天就以apache+mysql+php说一下静态编译和DSO动态编译的区别,我会分别拿apache1.3.27和apache2.0.46
说明,因为两个版本的编译命令是有所区别的。
系统和所需软件:
Redhat9.0
apache:1.3.27 和 2.0.46
php: 4.3.2
mysql:4.0.13

1。首先来安装mysql,这不是我们的重点,所以关于mysql的安装配置我就很快过去了
tar zvxf mysql-4.0.13.tar.gz
cd mysql-4.0.13
./configure --prefix=/usr/local/mysql --sysconfdir=/etc --localstatedir=/var/lib/mysql &&
make &&
make install
安装完成!
然后初始化数据库
/usr/local/mysql/bin/mysql_install_db
设置权限:
chown -R root /usr/local/mysql
复制配置文件;
cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
启动mysql:
/use/local/mysql/bin/mysqld_safe --user=root &
修改密码:初始的root密码是空的
/usr/local/mysql/bin/mysqladmin -u root -p password 1234
enter password:
把密码修改为1234,由于初始密码为空,所以enter password直接回车就行

测试一下新的密码:
mysql -u root -p mysql
enter password:1234
如果顺利的话就能进入mysql。

好了mysql就讲这么多,有什么问题也不要问我,我对mysql不是很熟悉。

好了下面是我们的重头戏,我将分别通过静态和动态DSO编译apache+php
至于什么是静态,什么是DSO动态我这里就不多讲了,本人个人倾向大家用DSO动态编译。

首先是apache1.3.29+php4.3.4+mysql4.0.13的静态编译
apache第一次编译,并不要安装,因为php的编译需要apache至少已经编译过一次
tar zvxf apache_1.3.27.tar.gz
cd apache_1.3.27
./configure --prefix=/usr/local/apache
编译php
tar zvxf php4.3.4.tar.gz
cd php4.3.4
./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql \
--with-apache=../apache_1.3.27 &&
make &&
make install
第二次编译安装apache:
cd ../apache_1.3.29
./configure --prefi=/usr/local/apache \
--activate-module=src/modules/php4/libphp4.a &&
make &&
make install
cp ../php4.3.4/php.ini.dist /usr/local/php/lib/php.ini

修改/usr/local/apache/conf/httpd.conf
查找<IfModule mod_mime.c>
在此范围添加
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
注意:apache和php的源码包在同一个目录,--with-apache=../apache_1.3.27是指向源码解压的目录

ok!静态编译完成,大家只要启动一下服务器
/usr/local/apache/bin/apachectl start
然后些个php测试页info.php:内容如下
<?php
phpinfo();
?>
正常的话,应该能看到php的信息了,恭喜你静态编译成功!!!
我们再来讲讲DSO动态编译的方法:
首先编译安装apache
tar zvxf apache_1.3.29
cd apache_1.3.29
./configure --prefix=/usr/local/apache --enable-module=so \
--enable-module=rewrite --enable-shared=max &&
make &&
make install
so模块用来提供DSO支持的apachehe核心模块,rewrite是地址重写的模块,如果不需要可以不编译
enable-shared=max是指除了so以外的所有标准模块都编译成DSO模块。

然后编译php
tar zvxf php4.3.4.tar.gz
cd php4.3.2
./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql \
--with-apxs=/usr/local/apache/bin/apxs &&
make &&
make install
然后修改httpd.conf,方法同静态编译的方法

OK,DSO动态编译就完成了,大家应该看出明堂来了吧,中间有什么区别应该看的很清楚了吧!!!

接下来我们讲apache2.0.46+php4.3.2的编译方法,我这里只讲DSO动态编译,静态编译实在没有时间测试了,
留给大家自己去试了。
一样现编译安装apache
tar zvxf httpd-2.0.46.tar.gz
cd httpd-2.0.46
./configure --prefix=/usr/local/apache2 --enable-so \
--enable-mods-shared=most &&
make &&
make install

大家注意了--enable-so相当与1.3.27的--enable-module=so,而--enable-mods-shared=most又等同与以前的
--enable-shared=max 这些区别大家要注意了,否则编译错了不要找我
然后还是编译PHP
tar zvxf php4.3.2.tar.gz
./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql \
--with-apxs2=/usr/local/apache2/bin/apxs &&
make &&
make install
注意这里是apxs2!!!
修改httpd.conf与1.3.27也有所不同,大家寻找Add Type application/x-tar .tgz 在下面添加
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
另外要显示中文的话,
修改:
AddDefaultCharset gb2312

启动一下apache
/usr/local/apache2/bin/apachectl start
用那个info.php测试一下

转载于:https://blog.51cto.com/jialitan/71274

LAMP部署搭建————重要文件备份相关推荐

  1. 基于ECS部署LAMP环境搭建Drupal网站,云计算技术与应用报告

    实验环境: 建站环境:Windows操作系统,基于ECS部署LAMP环境,阿里云资源, Web服务器:Apache,关联的数据库:MySQ PHP:Drupal 8 要求的PHP版本為7.0.33的版 ...

  2. 部署搭建DNS服务器

    部署搭建DNS服务器 域名服务器 DNS域名解析流程 域名类型 DNS主服务器搭建 正向解析配置 配置正向区域数据文件 DNS服务器测试 反向解析配置 配置反向区域数据文件 DNS服务器测试 DNS从 ...

  3. Lamp 架构 搭建 论坛网站

    实验环境: firewalld : stoped selinux: disabled 一. 构建lamp架构搭建论坛网站 在server1和server2上都安装部署相同的论坛网站,且二者共用同一个数 ...

  4. 基于LAMP架构搭建BBS论坛或者博客

    搭建 一.项目简介 二.环境准备 1.需要准备的软件包 2.安装前环境准备 3.编译方式 (讲究顺序) 三.编译安装MySQL 四.编译安装Apache 1.安装依赖包apr 2.安装httpd软件 ...

  5. 生产环境下的LAMP环境搭建

    生产环境下的LAMP环境搭建 V20 学习猿地  ww.lmonkey.com 一.LAMP环境介绍 Web服务器的主要功能是提供网上信息浏览服务.所有网页的集合被称为网站,网站也只有发布到网上才能被 ...

  6. lamp部署配置及部署phpmyadmin

    lamp部署&配置及部署phpmyadmin 文章目录 lamp部署&配置及部署phpmyadmin 1.lamp简介 2.web服务器工作流程 2.1 cgi与fastcgi 2.2 ...

  7. LAMP环境搭建之rpm软件包

    Linux+Apache+Mysql+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个 ...

  8. 阿里云ubuntu14.04下lamp环境搭建の备忘

    以下内容大部分来自于网络上的收集,百度搜lamp能搜到很多文字教程.百度lamp搭建 推荐几个视频教程: 在Ubuntu Server下搭建LAMP环境 PHP环境LAMP/LNMP安装与配置 我收藏 ...

  9. LAMP攻略: LAMP环境搭建,Linux下Apache,MySQL,PHP安装与配置

    之前写过一个red hat 9下的LAMP环境的配置,不过由于版本比较旧,很多不适用了. 所以决定写一个新的LAMP环境搭建与配置教程.本配置是在 CentOS-5.3 下 httpd-2.2.11. ...

最新文章

  1. 【PAT (Basic Level) 】1028 人口普查 (20 分)
  2. linux批量用户创建,linux 批量用户的创建
  3. android 导入开源项目代码常见问题
  4. zabbix服务器性能监控工具的安装二
  5. 系统架构师笔记(2)
  6. 常用算法 之二 牛顿迭代法求解PT100温度(高阶方程求解)
  7. python人脸识别opencv_Python与OpenCV实时人脸识别
  8. postman提取返回值_postman提取返回值
  9. 构建模式--Adapter模式(JAVA)
  10. 网上商城连接mysql_做一个网上网上购物网站,请问怎么连接数据库?
  11. 扩展Python模块系列(四)----引用计数问题的处理
  12. DispatchAction和MappingDispatchAction区别
  13. 第一周练习代码以及备注
  14. ZStack实践汇 | ZStack部署实战之VDI异构部署
  15. 联想怎么启用计算机的无线功能,IdeaCentre B3系列电脑无线连接中心的使用方法...
  16. 利用Python处理逐日气象数据集(.txt文件)
  17. MacOS 安装 brew (国内镜像源)
  18. 数学模型——基于差分方程的减肥模型(基于python)
  19. 关于word2vec词向量化
  20. 记录第一次使用python模拟鼠标点击

热门文章

  1. 解决windows 10英文版操作系统中VS2017控制台程序打印中文乱码问题
  2. 浅谈Generator和Promise原理及实现
  3. 《 自动化测试最佳实践:来自全球的经典自动化测试案例解析》一一2.4 开发内部测试工具...
  4. 基础排序算法(冒泡排序,选择排序,插入排序)
  5. 企业移动办公及手机办公方案
  6. 你可能已经知道或者不知道的ASP.NET 2.0技巧(转载)
  7. C# 获取一些简单的本机信息
  8. 一个Ext2+SWFUpload做的图片上传对话框
  9. C语言中结构体参数变量的传递
  10. AutoIt3(AU3)开发的智能驱动安装工具,用于系统封装,支持参数静默启动