LAMP----linux+apache+mysql+php详细安装步骤之一APACHE(openldap)

linux详细版本为RHEL5.3

[root@localhost mail]# uname -a

Linux localhost.localdomain 2.6.18-128.el5 #1 SMP Wed Dec 17 11:42:39 EST 2008 i686 i686 i386 GNU/Linux

1、上传apache源代码文件

httpd-2.2.13.tar.bz2

其实纯粹安装一个apache很简单

[root@localhost apache]# tar xvf httpd-2.2.13

[root@localhost apache]# cd httpd-2.2.13

[root@localhost httpd-2.2.13]# ./configure --prefix=/usr/local/apache

[root@localhost httpd-2.2.13]# make

[root@localhost httpd-2.2.13]# make install

通过以上命令就可以了,安装的目录为/usr/local/apache

一般还会添加些常用的模块,如apr,apr-util,open-ldap等

apache一般会自带apr和apr-util,在srclib目录里

进入/root/apache/httpd-2.2.13/srclib/apr目录

[root@localhost apr]# ./configure --prefix=/usr/local/apr --enable-threads --enable-other-child

[root@localhost apr]# make

[root@localhost apr]# make install

然后进入/root/apache/httpd-2.2.13/srclib/apr-util

[root@localhost apr-util]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-mysql=/usr/local/mysql \

> --with-ldap-lib=/usr/openldap/lib --with-ldap-include=/usr/openldap/include \

> --with-ldap=ldap --with-berkeley-db=/usr/local/BerkeleyDB.4.4

执行以上操作肯定会报错,因为LDAP未装,berkeleyDB.4.4也未装,所以还必须要先装这两个软件

上传openldap-stable-20100219.tgz和db-4.4.20.tar.gz,后者就是传说中的BerkeleyDB,也可以从ORACLE官网去下载他的源码包

[root@localhost apache]# tar zxvf db-4.4.20.tar.gz

[root@localhost apache]# cd db-4.4.20/build_unix/

[root@localhost build_unix]# ../dist/configure --prefix=/usr/local/BerkeleyDB.4.4

这儿有点要注意,BerkeleyDB不能在根目录下configure,一般都采用上面的方式进行配置

[root@localhost build_unix]# make

[root@localhost build_unix]# make install

安装完毕后需要配置些东西

[root@localhost build_unix]# vim /etc/ld.so.conf

在该文件中加入/usr/local/BerkeleyDB.4.4/lib

[root@localhost build_unix]# /sbin/ldconfig

[root@localhost build_unix]# vi /etc/profile

在末尾加上

LD_RUN_PATH=/usr/local/BerkeleyDB.4.4/lib

LD_LIBRARY_PATH=/usr/local/BerkeleyDB.4.4/lib

export LD_RUN_PATH LD_LIBRARY_PATH

[root@localhost build_unix]# source /etc/profile

下面开始安装openldap

[root@localhost apache]# tar zxvf openldap-stable-20100219.tgz

[root@localhost apache]# cd openldap-2.4.21/

[root@localhost openldap-2.4.21]# env CPPFLAGS="-I/usr/local/BerkeleyDB.4.4/include"LDFLAGS="-L/usr/local/BerkeleyDB.4.4/lib" ./configure --prefix=/usr/local/openldap --enable-bdb

报错 configure: error: BerkeleyDB version incompatible with BDB/HDB backends

版本错误

[root@localhost openldap-2.4.21]# cp /usr/local/BerkeleyDB.4.4/include/* /usr/include/

[root@localhost openldap-2.4.21]# cp /usr/local/BerkeleyDB.4.4/lib/* /usr/lib/

全部覆盖然后再执行

[root@localhost openldap-2.4.21]# env CPPFLAGS="-I/usr/local/BerkeleyDB.4.4/include"LDFLAGS="-L/usr/local/BerkeleyDB.4.4/lib" ./configure --prefix=/usr/local/openldap --enable-bdb

就OK了,然后按照要求执行

[root@localhost openldap-2.4.21]# make depend

[root@localhost openldap-2.4.21]# make

[root@localhost openldap-2.4.21]# make install

进入刚才apache下的apr-util目录

[root@localhost apr-util]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-mysql=/usr/local/mysql \

> --with-ldap-lib=/usr/openldap/lib --with-ldap-include=/usr/openldap/include \

> --with-ldap=ldap --with-berkeley-db=/usr/local/BerkeleyDB.4.4

然后make make install即可

至此apr,apr-util,BerkeleyDB,openldap安装完毕,下面正式进入apache安装

[root@localhost httpd-2.2.13]# ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-mods-shared='ldap authnz-ldap actions alias asis auth-basic auth-digest authn-anon authn-dbd authn-dbm authn-default authn-file authz-dbm authz-default authz-groupfile authz-host authz-owner authz-svn authz-user autoindex cern-meta cgi dav-fs dav-lock dav dav-svn dbd deflate dir dumpio env expires ext-filter filter headers ident imagemap include info log-config log-forensic logio mime-magic mime negotiation proxy-ajp proxy-balancer proxy-connect proxy-ftp proxy-http proxy-scgi proxy reqtimeout rewrite setenvif speling ssl status substitute unique-id userdir usertrack version vhost-alias'

以上我采用了动态模块的方式进行编译,每个模块可以通过httpd.conf的配置来选择是否加载模块,比如ldap模块

在httpd.conf里通过 LoadModule ldap_module modules/mod_ldap.so 来加载这个模块

只要将此行注释掉,apache将不再加载ldap模块

--enable-mods-shared=''的编译方式为动态编译,详见http://lamp.linux.gov.cn/Apache/ApacheMenu/programs/configure.html

配置完成后make  make install即可在/usr/local/apache安装好apache

安装完成

LAMP----linux+apache+mysql+php详细安装步骤之二mysql篇

[root@localhost mysql-5.1.36]# ./configure --prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/data/ --without-innodb --without-debug --without-isam --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=all --enable-assembler --with-pthread --enable-thread-safe-client --with-client-ldflags=-all-static -with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock

[root@localhost mysql-5.1.36]# make

[root@localhost mysql-5.1.36]# make install

MYSQL安装比较简单,从网上找了些文档,然后总结了几个对LINUX下有帮助的参数,配置安装一下即可

Mysql 配置

[root@localhost mysql-5.1.36]# cp ./support-files/mysql.server /etc/init.d/mysql

[root@localhost mysql-5.1.36]# groupadd mysql

[root@localhost mysql-5.1.36]# useradd –g mysql mysql

[root@localhost mysql-5.1.36]# chmod 777 /etc/init.d/mysql

[root@localhost mysql-5.1.36]# /usr/local/mysql/bin/mysql_install_db

[root@localhost mysql-5.1.36]# chown -R mysql:mysql /usr/local/mysql/data/

启动 Mysql

[root@localhost mysql-5.1.36]# service mysql start

[root@localhost mysql-5.1.36]# /usr/local/mysql/bin/mysqladmin –u root –p password 'rootpw'       // 设置密码为 rootpw

[root@localhost mysql-5.1.36]Enter password:                 // 默认密码为空,所以直接回车

[root@localhost mysql-5.1.36]# /usr/local/mysql/bin/mysql –u root –p

Enter password:                 // 输入新密码后,登录成功

mysql 安装配置完毕。

LAMP----linux+apache+mysql+php详细安装步骤之三php篇

zlib-1.2.3.tar.bz2 libmcrypt-2.5.7.tar.gz mhash-0.9.9.9.tar.bz2 libiconv-1.13.1.tar.gz gd-2.0.33.tar.gz jpegsrc.v7.tar.gz libpng-1.2.10.tar.bz2 libXpm-3.5.5.tar.bz2 libxml2-2.7.4.tar.gz

以上是我单独安装的包,也可以使用REDHAT自带的,如果是自带的,一般在配置PHP时采用/usr/include/目录就能找到

而单独装的包,可以使用./configure --prefix=/dir 来自定义路径,在配置PHP时采用这个路径即可

[root@localhost php-5.2.13]# ./configure --cache-file=./config.cache --prefix=/usr/local/php --sysconfdir=/usr/local/php/etc \

> --infodir=/usr/local/php/info --mandir=/usr/local/php/man --with-apxs2=/usr/local/apache/bin/apxs \

> --disable-debug --with-config-file-path=/usr/local/php/lib --with-config-file-scan-dir=/usr/local/php/etc \

> --enable-libxml --with-libxml-dir=/usr/local/libxml --with-zlib=/usr/local/zlib --enable-bcmath \

> --with-bz2=/usr/bin/bzip2 --enable-calendar --enable-ctype --with-curl=/usr/include/curl --with-curlwrappers \

> --enable-zip --enable-ftp --with-gettext --enable-mbstring --with-mcrypt=/usr/local/libmcrypt --with-mhash=/usr/local/mhash \

> --with-iconv=/usr/local/libiconv --with-xmlrpc --with-xsl=/usr/include/libxslt --with-gd=/usr/local/gd2 \

> --with-jpeg-dir=/usr/local/jpeg7 --with-png-dir=/usr/local/libpng --with-xpm-dir=/usr/local/libXpm --with-ttf \

> --with-freetype-dir=/usr/include/freetype2/freetype --without-t1lib --enable-gd-native-ttf --enable-gd-jis-conv \

> --with-mysqli=/usr/local/mysql/bin/mysql_config --with-mysql=/usr/local/mysql --with-mysql-sock=/tmp/mysql.sock \

> --with-ldap=/usr/local/openldap --with-gmp=/usr/local/gmp --enable-sigchild --enable-pdo --with-pdo-mysql=/usr/local/mysql

make  make isntall后即可安装完成,make test可做可不做

在/usr/local/apache/conf/httpd.conf里找有没有加载PHP

LoadModule php5_module        modules/libphp5.so

AddType application/x-httpd-php .php

AddType application/x-httpd-php-source .phps

如果没有可以手动加上,测试PHP是否安装完成可以在 /usr/local/apache/htdocs里新建一个index.php,内容如下

<?

phpinfo()

?>

保存后运行 /usr/local/apache/bin/apachectl -k start启动APACHE,在浏览器里访问该地址页面即可看到本机的安装的php信息

如果未出现,则证明PHP未安装成功。

LAMP----linux+apache+mysql+php详细安装步骤之一APACHE篇(openldap等)的更多相关文章

  1. MySQL主从详细安装步骤

    网站: 程序在:web服务器192.168.1.100上面 数据库在:MySQL服务器192.168.1.123上面 实现目的:增加一台MySQL备份服务器(192.168.1.124),作为MySQ ...

  2. Linux详细安装步骤

    Linux详细安装步骤(CentOS_6.7_64位) 1.先安装好VMware10软件 2.验证VM是否安装成功: (有些机器在安装vmware的时候会出现一个错误:virtual XT,这需要重启 ...

  3. Linux下zookeeper单机版详细安装

    Linux下zookeeper单机版详细安装 1.zookeeper简介 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop ...

  4. ACE-6.1.0 linux 下的编译与安装步骤

    ACE-6.1.0 linux 下的编译与安装步骤  引用至http://www.cnblogs.com/liangxiaxu/archive/2013/03/07/2948417.html 1.从  ...

  5. (转)OS X Mountain Lion 系统配置 Apache+Mysql+PHP 详细教程

    如果你是一名 Web 开发者,很多时候都需要在本地搭建服务器测试环境,比如 Apache+Mysql+PHP 这样的环境.事实上 Mac OS X 中想要搭建这样的环境很简单,本文我们就会将详细的教程 ...

  6. Hadoop HA(高可用) 详细安装步骤

    什么是HA? HA是High Availability的简写,即高可用,指当当前工作中的机器宕机后,会自动处理这个异常,并将工作无缝地转移到其他备用机器上去,以来保证服务的高可用.(简言之,有两台机器 ...

  7. Anaconda的详细安装步骤图文并茂

    Anaconda(官方网站)就是可以便捷获取包且对包能够进行管理,同时对环境可以统一管理的发行版本.Anaconda包含了conda.Python在内的超过180个科学包及其依赖项. 事实上Anaco ...

  8. --nodejs详细安装步骤

    什么是nodejs? 脚本语言需要一个解析器才能运行,JavaScript是脚本语言,在不同的位置有不一样的解析器,如写入html的js语言,浏览器是它的解析器角色.而对于需要独立运行的JS,node ...

  9. linux环境下jdk的安装步骤

    JDK的安装步骤:1. 把jdk文件cp到服务器上2. 加权限 chmod +x 文件3. 执行 ./4.修改配置 vi /etc/profile 最后一行添加:export  JAVA_HOME=/ ...

随机推荐

  1. 1090 Highest Price in Supply Chain (25 分)(树的遍历)

    求所有叶节点中的最高价以及这个价格的叶节点个数 #include<bits/stdc++.h> using namespace std; ; vector<int>mp[N]; ...

  2. hnust 分蛋糕

    问题 B: 分蛋糕 时间限制: 1 Sec  内存限制: 128 MB提交: 2430  解决: 966[提交][状态][讨论版] 题目描述 今天是DK生日,由于DK的朋友很多,所以DK在蛋糕店定制了 ...

  3. perror表

    #define EPERM 1 /* Operation not permitted */ #define ENOENT 2 /* No such file or directory */ #defi ...

  4. nyoj 题目61 传纸条

    传纸条(一) 时间限制:2000 ms  |  内存限制:65535 KB 难度:5   描述 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个m行 ...

  5. Block层也是有IO的优先级的

    ---恢复内容开始--- 今天查看iotop的原理,竟然发现了IO优先级一说,IO是block层cfs调度器中的概念 block层也有一个类似于CPU的调度算法 对进程分成三个级别:RT,BE,IDL ...

  6. thinkPHP判断是否修改成功

    thinkPHP中使用save方法来更新数据的save方法的正常执行时返回值是影响的记录数,出错时返回false,返回为0和返回false在很多业务场景下都是不同的. 而当修改的内容和原有内容一致的时 ...

  7. 【C++ 拾遗】C++'s most vexing parse

    C++'s most vexing parse 是 Scott Meyers 在其名著<Effective STL>中创造的一个术语. Scott 用这个术语来形容 C++ 标准对于 de ...

  8. [poj] 3068 "Shortest" pair of paths || 最小费用最大流

    [原题](http://poj.org/problem?id=3068) 给一个有向带权图,求两条从0-N-1的路径,使它们没有公共点且边权和最小 . //是不是像传纸条啊- 是否可行只要判断最后最大 ...

  9. Printed Circuit Board (board)

    Printed Circuit Board (board) 题目描述 给出一个N个顶点的简单多边形,对于每个顶点,假如它和原点连成的线段只在这个顶点处和多边形相交,就称为满足要求的顶点.你的任务是输出 ...

  10. [SCOI2005]互不侵犯 (状压$dp$)

    题目链接 Solution 状压 \(dp\) . \(f[i][j][k]\) 代表前 \(i\) 列中 , 已经安置 \(j\) 位国王,且最后一位状态为 \(k\) . 然后就可以很轻松的转移了 ...