LAMP源码编译安装配置.doc_第1页
LAMP源码编译安装配置.doc_第2页
LAMP源码编译安装配置.doc_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

LAMP源码编译安装配置+wordpress什么是LAMP呢?LAMP就是Linux+apache+mysql+php,一组常用来搭建动态网站或者静态网站的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。Linux系统稳定,而apache功能强大,mysql也是开源的性能优越的数据库,php用来是web服务器支持动态php网页,他们四者是面向应用的黄金组合。 下面是Linux +httpd-2.4.1 + mysql-5.5.19 + php-5.3.10的编译安装过程: 一,编译安装apache 二、安装mysql-5.5.19 三、编译安装php-5.3.10 四,安装phpMyAdmin-3.2.5,以便于我们以图形化的方式管理mysql 五,建站工具wordpress的安装 首先,我们要配置好yum源。可以把我们的yum源指向我们的光盘中的Server目录,方便我们安装其中的软件包.一、编译安装apache 1、解决依赖关系 httpd-2.4.1需要较新版本的apr和apr-util,因此需要事先对其进行升级。 升级方式有两种,一种是通过源代码编译安装,第二种是直接升级rpm包。 第一种:源代码编译安装: apr-1.4.6: # ./configure -prefix=/usr/local/apr # make # make install apr-util-1.4.1: # ./configure -prefix=/usr/local/apr-util -with-apr=/usr/local/apr -with-apr= 指定apr的位置 # make # make install 第二种:用rpm包直接升级(这个rpm包可以自己制作或是网上下载): 共需要如下4个软件包: apr-1.4.6-1.i386.rpm apr-devel-1.4.6-1.i386.rpm apr-util-1.4.1-1.i386.rpm apr-util-devel-1.4.1-1.i386.rpm #rpm -Uvh apr-1.4.6-1.i386.rpm apr-devel-1.4.6-1.i386.rpm #rpm -Uvh apr-util-1.4.1-1.i386.rpm apr-util-devel-1.4.1-1.i386.rpm 另外,httpd-2.4.1编译过程也要依赖于pcre-devel软件包,需要事先安装。此软件包系统光盘自带,可以用yum命令安装: #yum install pcre-devel 2、编译安装httpd-2.4.1 首先下载httpd-2.4.1到本地,而后执行如下命令进行编译安装过程。 首先两个开发包组要安装,这是编译安装所必要的: #yum groupinstall Development Tools Development Libraries # tar xf httpd-2.4.1.tar.bz2 #cdhttpd-2.4.1 # ./configure -prefix=/usr/local/apache -sysconfdir=/etc/httpd -enable-so -enable-ssl -enable-cgi -enable-rewrite-with-zlib -prefix= 指定安装路径 -sysconfdir= 指定配置文件的安装路径 -enable-so 启用DSO功能,让apache在需要的时候动态装载模块,这个很重要 -enable-ssl 启用ssl功能 -enable-cgi 启用cgi功能 -enable-rewrite 启用URL重写 -with-zlib # make 编译 # make install 安装 3、修改httpd的主配置文件,设置其Pid文件的路径 #vim /etc/httpd/httpd.conf 添加如下行即可: PidFile /var/run/httpd.pid 4、提供SysV服务脚本/etc/rc.d/init.d/httpd: 编辑这个文件,添加如下内容,保存退出 vim /etc/rc.d/init.d/httpd #!/bin/bash # # httpd Startup script for the Apache HTTP Server # #chkconfig: - 85 15 # description: Apache is a World Wide Web server. It is usedto serve # HTMLfiles and CGI. # processname: httpd # config: /etc/httpd/conf/httpd.conf # config: /etc/sysconfig/httpd # pidfile: /var/run/httpd.pid # Source function library. . /etc/rc.d/init.d/functions if -f /etc/sysconfig/httpd ; then . /etc/sysconfig/httpd fi # Start httpd in the C locale by default. HTTPD_LANG=$HTTPD_LANG-C # This will prevent initlog from swallowing up a pass-phrase prompt if # mod_ssl needs a pass-phrase from the user. INITLOG_ARGS= # Set HTTPD=/usr/sbin/httpd.worker in /etc/sysconfig/httpd to use a server # with the thread-based worker MPM; BE WARNED that some modules may not # work correctly with a thread-based MPM; notably PHP will refuse to start. # Path to theapachectlscript, server binary, and short-formfor messages. apachectl=/usr/local/apache/bin/apachectl httpd=$HTTPD-/usr/local/apache/bin/httpd prog=httpd pidfile=$PIDFILE-/var/run/httpd.pid lockfile=$LOCKFILE-/var/lock/subsys/httpd RETVAL=0 start() echo -n $Starting $prog: LANG=$HTTPD_LANG daemon -pidfile=$pidfile $httpd $OPTIONS RETVAL=$? echo $RETVAL = 0 &touch$lockfile return $RETVAL stop() echo -n $Stopping$prog: killproc -p $pidfile -d 10 $httpdRETVAL=$?echo $RETVAL = 0 & rm -f $lockfile $pidfile reload() echo -n $Reloading $prog: if ! LANG=$HTTPD_LANG $httpd $OPTIONS -t &/dev/null; then RETVAL=$? echo $not reloading due to configuration syntax error failure $not reloading $httpd due to configuration syntax error else killproc -p $pidfile $httpd -HUP RETVAL=$? fi echo # See how we were called. case $1 in start)start; stop)stop; status) status -p $pidfile $httpdRETVAL=$?; restart)stopstart; condrestart)if -f $pidfile ; thenstopstartfi; reload) reload; graceful|help|configtest|fullstatus)$apachectl $RETVAL=$?; *)echo $Usage: $prog start|stop|restart|condrestart|reload|status|fullstatus|graceful|help|configtestexit 1 esac exit $RETVAL 而后为此脚本赋予执行权限: #chmod+x /etc/rc.d/init.d/httpd 把httpd服务加入服务列表: # chkconfig -addhttpd #chkconfig httpd on 接下来我们就可以执行service相关命令了 开启httpd服务: #service httpd start 二、安装mysql-5.5.19 1、准备数据存放的文件系统 在企业应用中,由于数据库中的数据变化量是很大的,为了方便管理,我们可以把数据库放在一个逻辑卷上,可以很方便的扩展或缩减其空间大小,利用管理。 首先进行分区,用作物理卷的分区的id为8e,大小为10G,我们这里以创建分区/dev/sda3为例: #fdisk/dev/sda 让kernel识别新建的分区: #partprobe /dev/sda 创建物理卷: #pvcreate /dev/sda3 创建卷组: #vgcreate myvg /dev/sda3 创建逻辑卷; #lvcreate -L 5G -n lv_mydata myvg 格式化逻辑卷: #mke2fs-j /dev/myvg/lv_mydata 逻辑卷的挂载目录为/mydata,/mydata/data目录来存放mysql的数据: #mkdir-p /mydata/data 使逻辑卷开机自动挂载: #vim /etc/fstab 添加如下行: /dev/myvg/lv_mydata /mydata ext3 defaults 0 0 挂载/etc/fstab中的文件系统: #mount -a 2、新建系统用户以安全方式运行mysqld进程: # groupadd -r mysql #useradd-g mysql -r -s /sbin/nologin -M mysql 由于/mydata/data是用于存放mysql数据的文件,故要更改其属主属组为mysql: #chown-R mysql:mysql /mydata/data 3、安装并初始化mysql-5.5.19 首先下载平台对应的mysql-5.5.19版本至本地,这里是32位平台,因此,选择的为mysql-5.5.19-linux2.6-i686.tar.gz,这个是绿色版的。 # tar xf mysql-5.5.19-linux2.6-i686.tar.gz -C /usr/local # cd /usr/local/ #ln-sv mysql-5.5.19-linux2.6-i686 mysql # cd mysql # chown -R mysql:mysql . 初始化数据库: # scripts/mysql_install_db -user=mysql -datadir=/mydata/data -user= 指定运行mysql数据库的用户 -datadir= 指定数据库数据的存放位置 # chown -R root . 4、为mysql提供主配置文件: # cd /usr/local/mysql #cpsupport-files/f /etc/f #vim /etc/f 修改此文件中thread_concurrency的值为你的CPU个数乘以2,比如这里使用如下行: thread_concurrency = 2 另外还需要添加如下行指定mysql数据文件的存放位置: datadir = /mydata/data 5、为mysql提供sysv服务脚本: # cd /usr/local/mysql # cp support-files/mysql.server /etc/rc.d/init.d/mysqld 添加至服务列表: # chkconfig -add mysqld # chkconfig mysqld on 接下来我们就可以执行service相关命令了 开启mysqld服务: #service mysqld start 为了使用mysql的安装符合Linux系统使用规范,并将其开发组件导出给系统使用,这里还需要进行如下步骤: 6、输出mysql的man手册至man命令的查找路径: #vim /etc/man.config 添加如下行即可: MANPATH /usr/local/mysql/man 7、输出mysql的头文件至系统头文件路径/usr/include: 这可以通过简单的创建链接实现: # ln -sv /usr/local/mysql/include /usr/include/mysql 8、输出mysql的库文件给系统库查找路径: # echo /usr/local/mysql/lib /etc/ld.so.conf.d/mysql.conf 而后让系统重新载入系统库: # ldconfig 9、修改PATH环境变量,让系统所有用户可以直接使用mysql的相关命令: vim /etc/profile PATH=$PATH:/usr/local/mysql/bin (重新登录系统即可生效) 三、编译安装php-5.3.10 1、解决依赖关系: # yum -y groupinstall X Software Development 如果想让编译的php支持mcrypt扩展,需要下载如下两个rpm包并安装之: libmcrypt-2.5.7-5.el5.i386.rpm libmcrypt-devel-2.5.7-5.el5.i386.rpm #rpm -ivh libmcrypt-2.5.7-5.el5.i386.rpm # rpm -ivh libmcrypt-devel-2.5.7-5.el5.i386.rpm 2、编译安装php-5.3.10 首先下载源码包至本地目录,然后编译安装: # tar xf php-5.3.10.tar.bz2 # cd php-5.3.10 # ./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 -with-apxs2=/usr/local/apache/bin/apxs -with-mcrypt -with-mysql= 指定mysql的路径,php有时要调用mysql中的数据 -with-openssl 支持ssl功能 -with-mysqli=/usr/local/mysql/bin/mysql_config 指定mysqli这个接口的;路径 -enable-mbstring 支持多字节串 -with-freetype-dir 要启用freetype的功能,是一个绘图库 -with-jpeg-dir 启用jpeg功能,也是一个绘图库 -with-png-dir 启用png功能,也是一个绘图库 -with-zlib 启用zlib功能,是一个压缩库 -with-libxml-dir= 指定扩展标记语言的库文件的位置 -enable-xml 启用xml功能 -with-apxs2= 使用指定的这个命令,把php做成apache的一个模块,这个很重要 -with-mcrypt 支持mcrypt扩展 说明:如果前面第1步解决依赖关系时没有安装mcrypt相关的两个rpm包,此./configure命令还不用带-with-mcrypt # make # make test # make intall 为php提供配置文件: # cp php.ini-production /usr/local/php/lib/php.ini 3、 编辑apache配置文件httpd.conf,以使apache支持php # vim /etc/httpd/httpd.conf 1、添加如下二行 AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps 2、定位至DirectoryIndex index.html 修改为: DirectoryIndex index.php index.html 而后重新启动httpd,或让其重新载入配置文件即可测试php是否已经可以正常使用。 #service httpd restart #vim /usr/local/apache/htdocs/index.php 添加如下行: 如果显示“PHP Version 5.3.10”的很多信息,则配置正常。如图所示: apache放网页的位置是:/usr/local/apache/htdocs ,主配置文件是:/etc/httpd/httpd.conf 四,安装phpMyAdmin-3.2.5,以便于我们以图形化的方式管理mysql: 加入我们想让以http:/web_ip/padm的方式访问数据库,则: #mkdir /usr/local/apache/htdocs/padm #tax xf phpMyAdmin-3.2.5-all-languages.tar.gz #mvphpMyAdmin-3.2.5-all-languages/* /usr/local/apache/htdocs/padm #cd /usr/local/apache/htdocs/padm #cp config.sample.inc.php config.inc.php #vim config.inc.php 更改$cfg的行,加一段乱码: $cfgblowfish_secret = ajdfjflkdjfdf;l; 由于phpMyAdmin不支

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论