一步一步源码编译最新版LAMP平台(三)

安装完mysql,下面编译安装php-5.4.41

因为在编译php的时候需要用到--with-mcrypt的选项,该选项支持加密功能,然而此选项需要依赖以下几个rpm包生成的库文件,所以需要先安装如下包。

yum localinstall libmcrypt-2.5.7-5.el5.x86_64.rpm libmcrypt-devel-2.5.7-5.el5.x86_64.rpm mhash-0.9.2-6.el5.x86_64.rpm mhash-devel-0.9.2-6.el5.x86_64.rpm --nogpgcheck

接下来安装php

# tar xf php-5.4.41.tar.gz
# cd php-5.4.41
# ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-openssl 
--with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir 
--with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml  
--enable-sockets --with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt  
--with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2  
--enable-maintainer-zts
选项理解
--with-mysqli=/usr/local/mysql/bin/mysql_config    此选项表示通过另外的mysql接口和mysql通
信
--with-zlib 支持zlib压缩
--with-apxs2=/usr/local/apache/bin/apxs     此选项很重要,如果需要将php编译成httpd的模块的
话,此选项必加,如果要编译成fastcgi的话则需要添加--enable-fpm,两者不能同时添加
--enable-maintainer-zts    这里为了支持apache的worker或event这两个MPM,编译时使用了
--enable-maintainer-zts选项,如果是prefork则不需要此选项
make
make install

为php提供配置文件:
# cp php.ini-production /etc/php.ini

编辑apache配置文件httpd.conf,以apache支持php

# vim /etc/httpd/httpd.conf
 1、添加如下二行
   AddType application/x-httpd-php  .php
   AddType application/x-httpd-php-source  .phps

让httpd能够识别php类型的文件

2、定位至DirectoryIndex index.html
   修改为:
    DirectoryIndex  index.php  index.html

重新启动httpd

安装xcache,为php加速:xcache-3.2.0.tar.gz

# tar xf xcache-3.2.0.tar.gz
# cd xcache-3.2.0
# /usr/local/php/bin/phpize 准备编译扩展
# ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config
# make && make install

编辑php.ini,整合php和xcache:

首先将xcache提供的样例配置导入php.ini
# mkdir /etc/php.d
# cp xcache.ini /etc/php.d

接下来编辑/etc/php.d/xcache.ini,找到zend_extension开头的行,修改为如下行:
zend_extension = /usr/local/php/lib/php/extensions/no-debug-zts-20100525/xcache.so

测试php

cd /usr/local/apache/htdocs/
mv index.html index.php
vim index.php
添加 <?php
        phpinfo();
     ?>
重启httpd,打开浏览器

测试php连接mysql
vim index.php
添加内容
    <?php
        $conn=mysql_connect(‘localhost‘,‘root‘,‘‘);
        if($conn)
            echo "success...";
        else
            echo "failure...";
     ?>
如果一切正常,浏览器应该显示success...

为httpd添加虚拟主机
vim /etc/httpd/httpd.conf
注释掉DocumentRoot
解注释
Include /etc/httpd/extra/httpd-vhosts.conf

编辑虚拟机文件
vim /etc/httpd/extra/httpd-vhosts.conf

<VirtualHost *:80>
    DocumentRoot "/www/a.org"
    <Directory "/www/a.org">
        Options none
        AllowOverride none
        Require all granted  #此选项要添加,否则目录不可访问
    </Directory>
    ServerName www.a.org
    ErrorLog "/var/log/httpd/a.org-error_log"
    CustomLog "/var/log/httpd/a.org-access_log" combined
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "/www/b.net"
    <Directory "/www/b.net">
        Options none
        AllowOverride none
        Require all granted
    </Directory>
    ServerName www.b.net
    ErrorLog "/var/log/httpd/b.net-error_log"
    CustomLog "/var/log/httpd/b.net-access_log" common
</VirtualHost>

编辑宿主机hosts文件 添加解析
192.168.195.129        www.a.org
192.168.195.129        

为2个虚拟机添加网页文件
echo "www.a.org" > /www/a.org/index.html
echo "www.b.net" > /www/b.net/index.html

通过浏览器就可以正常访问
时间: 2024-10-08 11:13:06

一步一步源码编译最新版LAMP平台(三)的相关文章

一步一步源码编译最新版LAMP平台

#!/bin/bash # # httpd        Startup script for the Apache HTTP Server # # chkconfig: - 85 15 # description: Apache is a World Wide Web server.  It is used to serve #           HTML files and CGI. # processname: httpd # config: /etc/httpd/conf/httpd.

一步一步源码编译最新版LAMP平台(二)

安装完apache之后,下面来安装mysql 解压 mysql-5.6.25-linux-glibc2.5-x86_64.tar.gz 到/usr/local/ tar xf mysql-5.6.25-linux-glibc2.5-x86_64.tar.gz -C /usr/local 链接 mysql-5.6.25-linux-glibc2.5-x86_64 到 mysql ln -sv mysql-5.6.25-linux-glibc2.5-x86_64 mysql cd mysql 添加 

源码编译安装分离式LAMP平台

前言: LAMP是指:Linux(操作系统),Apache(Web服务器),MySQL/MariaDB(数据库),PHP/Perl/Python(脚本语言),所有组成产品各自独立的开源软件,组合在一起使用,就组成了目前互联网中流行的Web框架:与Java/J2EE架构相比,LAMP具有Web资源丰富,轻量,开发快速等特点,与微软的.NET架构相比,LAMP具有通用.跨平台.高性能.低价格的优势,因此LAMP无论是性能.质量还是价格都是企业搭建网站的首选平台. 工作原理: 分离式的LAMP架构,A

windows平台源码编译最新版openssl

1.从openssl官网下载最新版openssl      https://www.openssl.org/source/ The latest stable version is the 1.1.0 series of releases 最新版为1.1.0  2016.8.25更新版 2.本机安装VS Studio,我的是vs2008 3.安装ActivePerl(http://www.activestate.com/activeperl/downloads 官网地址),最好安装5.20版,因

纯源码编译安装LAMP,linux,httpd,php,mysql源码编译安装

教程目标:使用源码编译安装的LAMP,运行php网页基础代码 日    期:2015年08月19日 联系邮箱:[email protected] Q Q  群:1851 15701 51CTO博客首页:http://990487026.blog.51cto.com做一个对读者负责的博主.安装一个和我一样的纯净系统,我可以安装成功,你也可以安装成功.我行,你也行!================================================================安装准备

CentOS6.5 从源码编译安装 GCC-4.9.1 全程实录,包含测试使用《图文教程》

前言 GCC(GNU Compiler Collection,GNU编译器合集)是linux以及其他类UNIX平台上进行开源项目,软件开发等必不可少的工具链组成之一(工具链的其他成员包括 binutils,Glibc,libstdc++ 等) 另外,对于程序员以及系统管理员而言,经常需要从软件的源码手动编译安装,而不论是configure脚本,还是make工具/makefile文件,最终都需要调用gcc(或者其它编译器)来进行实际的编译工作,因此,经常需要使用gcc的新版特性,并且与旧版gcc共

面试被问懵?带你一步一步深入Handler源码,不信还拿不下面试官?

Handler机制是Android中相当经典的异步消息机制,在Android发展的历史长河中扮演着很重要的角色,无论是我们直接面对的应用层还是FrameWork层,使用的场景还是相当的多. 很多朋友面试时问到了这里,一时被问懵.从哪里跌倒就从哪里爬起来,带大家一步一步深入Handler源码,就不信还拿不下面试官! BATJ.字节跳动面试专题,算法专题,高端技术专题,混合开发专题,java面试专题,Android,Java小知识,到性能优化.线程.View.OpenCV.NDK等已经上传到了的我的

centos 6.5源码编译安装subversion 1.8.10

一.简介 CentOS 6.5的yum源可以安装的SVN客户端版本太低了,1.6.11,所以需要升级到1.8.10,而官网有没有找到1.8.10的安装包,只能选择源码编译安装. 二.安装步骤 参考官网:http://svn.apache.org/repos/asf/subversion/trunk/INSTALL 源码下载:http://archive.apache.org/dist/subversion/ 源码编译subversion依赖许多别的工具,比如:apr.apr-util.libto

源码编译安装

除了用rpm.yum安装包外,还可以用源码编译安装 源码包:代码可见的,要想在系统里运行,要翻译成机器语言,编译就是翻译的过程. 源码包下载最好去官方网站 以httpd为例 下载地址 以后下载的源码包最好放在/usr/local/src下,目的是为了以后方便维护 有时候,需要去看一下它里面的文件,比如INSTALL  README 安装指引 源码包安装三个步骤: 第一步:   ./configure --help  查看有哪些选项 --prefix   指定安装路径 检查这步操作是否有问题,没问