linux 服务器搭建(一)

<pre name="code" class="plain">016/10/30
LAMP架构
	源码包与二进制包选择
		如果软件包是对外提供服务的,建议选择源码包 性能提高5个百分点
		如果软件包是Linux底层支持包,建议选择二进制包
准备工作
	1.关闭防火墙与SELinux
		关闭防火墙
			iptables -F
			service iptables save
		关闭SELinux
			vim /etc/selinux/config
			SELINUX=disabled
			或者
			sestatus 查看当前SELInux状态
			setenfoce 0 关闭SELInux
			setenfoce 1 开启SELInux
	2.搭建本地yum源
		挂载光盘 mount
		禁用网络yum源 
			cd /etc/yum.repos.d  禁用CentOS-Base.repo网络yum源
			vim  CentOS-Base.repo 
					修改enabled=0禁用yum源
				或者
					修改CentOS-Base.repo名称
	 	启动光盘yum源	
			vim  CentOS-Media.repo  修改CentOS-Media.repo光盘yum源
				修改光盘yum源地址为 挂载点的yum源地址
				例如 baseurl=file:///mnt/edrom
				并且注释其他yum源
					#        file:///media/cdrom/
					#        file:///media/cdrecorder/
				修改enabled为   enabled=1
				验证是否成功   yum list 命令  可以查看到yum安装包
		安装gcc
			yum -y install gcc
		
	3.关闭不必要的服务
		ntsysv
								Linux服务列表
			acpid	电源管理接口。如果是笔记本用户建议开启,可以监听内核层的相关电源事件。	开启
			anacron	系统的定时任务程序。cron的一个子系统,如果定时任务错过了执行时间,可以通过anacron继续唤醒执行。	关闭
			alsasound	Alsa声卡驱动。如果使用alsa声卡,开启	关闭
			apmd	电源管理模块。如果支持acpid,就不需要apmd,可以关闭	关闭
			atd	指定系统在特定时间执行某个任务,只能执行一次。如果需要则开启,但我们一般使用crond来进行循环定时任务。	关闭
			auditd	审核子系统。如果开启了此服务,SELinux的审核信息会写入/var/log/audit/audit.log文件,
				如果不开启,审核信息会记录在syslog中	开启
			autofs	让服务器可以自动挂载网络中的其他服务器的共享数据,一般用来自动挂载NFS服务。如果没有NFS服务建议关闭	关闭
			avahi-daemon	Avahi 是 zeroconf 协议的实现。它可以在没有 DNS 服务的局域网里发现基于 zeroconf 协议的设备和服务。
					除非有兼容设备或使用zeroconf协议,否则关闭。	关闭
			bluetooth	蓝牙设备支持。一般不会在服务器上启用蓝牙设备,关闭它	关闭
			capi	仅对使用ISND设备的用户有用。	关闭
			chargen-dgram	使用UDP协议的chargen server。主要功能是提供类似远程打字的功能。	关闭
			chargen-stream	同上。	关闭
			cpuspeed	可以用来调整CPU的频率。当闲置时可以自动降低CPU频率来节省电量。	开启
			crond	系统的定时任务,一般的Linux服务器都需要定时任务帮助系统维护。建议开启	开启
			cvs	一个版本控制系统	关闭
			daytime-dgram	daytime使用TCP 协议的Daytime守护进程,该协议为客户机实现从远程服务器获取日期 和时间的功能。	关闭
			daytime-stream	同上。	关闭
			dovecot	邮件服务中POP3/IMAP服务的守护进程。主要用来接收信件,如果启动了邮件服务则开启,否则关闭	关闭
			echo-dgram	服务器回显客户服务的进程。	关闭
			echo-stream	同上。	关闭
			firstboot	系统安装完成之后,有个欢迎界面,需要对系统进程初始设定。就是这个进程的作用。既然不是第一次启动了,关闭吧	关闭
			gpm	在字符终端(tty1-tty6)中可以使用鼠标复制和粘贴。就是这个服务的功能。	开启
			haldaemon	检测盒支持USB设备。如果是服务器可以关闭,个人机建议开启。	关闭
			hidd	蓝牙鼠标、键盘等蓝牙设备检测。必须启动bluetooth服务。	关闭
			hplip	HP打印机支持,如果没有HP打印机关闭吧	关闭
			httpd	apache服务的守护进程。如果需要启动apache,就开启。	开启
			ip6tables	IPv6的防火墙,目前IPv6协议并没有使用,可以关闭	关闭
			iptables	防火墙功能,Linux中防火墙是内核支持功能。这是服务器的主要防护手段,必须开启。	开启
			irda	IrDA 提供红外线设备(笔记本,PDA’s,手机,计算器等等)间的通讯支持。关闭吧	关闭
			irqbalance	支持多核处理器,让CPU可以自动分配系统中断(IRQ),提高系统性能。目前服务器多是多核CPU,请开启。	开启
			isdn	使用ISDN设备连接网络。目前主流的联网方式是光纤接入和ADSL,ISDN已经非常少见,请关闭	关闭
			kudzu	该服务可以在开机时进行硬件检测,并会调用相关的设置软件。建议关闭,仅在需要时开启	关闭
			lvm2-monitor	该服务可以让系统支持LVM逻辑卷组,如果分区采用的是LVM方式,那么应该开启。建议开启	开启
			mcstrans	SELinux的支持服务。建议启动	开启
			mdmonitor	该服务用来监测 Software RAID 或 LVM 的信息。不是必须服务,建议关闭	关闭
			mdmpd	该服务用来监测 Multi-Path 设备。不是必须服务	关闭
			messagebus	这是 Linux 的 IPC(Interprocess Communication,进程间通讯)服务,用来在各个软件中交换信息。个人建议关闭	关闭
			microcode_ctl	Intel系列的CPU可以通过这个服务支持额外的微指令集。	关闭
			mysqld	mysql数据库服务器。如果需要就开启,否则关闭	开启
			named	DNS服务的守护进程,用来进行域名解析。如果是DNS服务器则开启,否则关闭	关闭
			netfs	该服务用于在系统启动时自动挂载网络中的共享文件空间,比如:NFS,Samba 等等。需要就开启,否则关闭	关闭
			network	提供网络设置功能。通过这个服务来管理网络,所以开启	开启
			nfs	NFS(Network File System)服务,Linux与Linux之间的文件共享服务。需要就开启,否则关闭	关闭
			nfslock	在Linux中如果使用了NFS服务,为了避免同一个文件被不同的用户同时编辑,所有有这个锁服务。有NFS是开启,否则关闭	关闭
			ntpd	该服务可以通过互联网自动更新系统时间,使系统时间永远都准确。需要则开启,但不是必须服务	关闭
			pcscd	智能卡检测服务,可以关闭	关闭
			portmap	用在远程过程调用(RPC)的服务,如果没有任何RPC服务时,可以关闭。主要是NFS和NIS服务需要。	关闭
			psacct	该守护进程支持几个监控进程活动的工具。	关闭
			rdisc	客户端ICMP路由协议	关闭
			readahead_early	在系统开机的时候,先将某些进程加载如内存整理,可以加快一点启动速度。	关闭
			readahead_later	同上	关闭
			restorecond	用于给 SELinux 监测和重新加载正确的文件上下文。如果开启SELinux则需要开启。	关闭
			rpcgssd	与NFS有关的客户端功能。如果没有NFS就关闭吧。	关闭
			rpcidmapd	同上	关闭
			rsync	远程数据备份守护进程。	关闭
			sendmail	sendmail邮件服务的守护进程。如果有邮件服务就开启,否则关闭	关闭
			setroubleshoot	该服务用于将SELinux相关信息记录在日志/var/log/messages中。建议开启	开启
			smartd	该服务用于自动检测硬盘状态。建议开启	开启
			smb	网络服务samba的守护进程。可以让Linux和Windows之间共享数据。如果需要则开启	关闭
			squid	代理服务的守护进程。如果需要则开启,否则关闭	关闭
			sshd	ssh加密远程登陆管理的服务。服务器的远程管理必须使用此服务,不要关闭	开启
			syslog	日志的守护进程。	开启
			vsftpd	vsftp服务的守护进程。如果需要FTP服务则开启,否则关闭	关闭
			xfs	这个是X Window的字体守护进程。为图形界面提供字体服务,如果不启动图形界面,就不用开启。	关闭
			xinetd	超级守护进程。如果有依赖xinetd的服务就必须开启。	开启
			ypbind	为NIS(网络信息系统)客户机激活ypbind服务进程。	关闭
			yum-updatesd	yum的在线升级服务。	关闭
	4.关闭或删除RPM包安装的软件
		关闭RPM包安装的Apache和MySQL
			service httpd stop
			service mysqld stop
		禁用Apache和MYSQl启动的自启动
			chkconfig --level 2345 httpd off
			chkconfig --level 2345 mysqld off
	5.使用工具把源码包拷贝到/usr/local/src 目录下
	6.批量解压缩 脚本
		#!/bin/bash

		cd /lamp
		ls *.tar.gz > ls.log
		ls *.tgz >> ls.log

		for i in $(cat ls.log)
		        do
		                tar -zxf $i
		        done
	    执行Shell脚本
		date ; ./tar.sh ;date
	6.查看硬盘剩余空间
		df -h
	7.安装是否成功
		出现错误应该 执行 make clean
辅助软件安装
	1.安装python-devel
			yum -y install python-devel
	2. cd /lamp/libxml2-2.9.1
		 ./configure --prefix=/usr/local/libxml2/ && make &&  make install       #指定--prefix 安装到的目录

		 # 安装libxml2
			libxml是一个用来解析XML文档的函数库。它用C语言写成, 并且能为多种语言所调用,
			例如C语言,C++,XSH。C#, Python,Kylix/Delphi,Ruby,和PHP等。Perl中也可以使用XML::LibXML模块。
			它最初是为GNOME开发的项目,但现在可以用在各种各样的方面。libXML 代码可移植性非常好,因为它基于标准的ANSI C库,
			并采用MIT许可证。

		多命令顺序执行:
			&&		命令1正确执行,命令2才会执行
			||		命令1不正确执行,命令2才会执行
			;		命令1执行完成,命令2执行
			|		命令1的执行结果,作为命令2 的操作对象


		#yum  install  -y  libxml2-devel	如果报错,安装此包后再尝试安装

		yum -y install python-devel			必须有

	 3.安装c++   
		yum -y  install  gcc-c++
	 4. 安装libmcrypt					
			libmcrypt是加密算法扩展库。支持DES, 3DES, RIJNDAEL, Twofish, IDEA, GOST, CAST-256, ARCFOUR, SERPENT, SAFER+等算法。
			yum -y  install  gcc-c++

			 cd /lamp/libmcrypt-2.5.8
			 ./configure --prefix=/usr/local/libmcrypt/
			 make 
			 make install
			 * 需调用gcc-c++编译器,未安装会报错

	5 安装libltdl,也在libmcrypt源码目录中,非新软件
		 cd /lamp/libmcrypt-2.5.8/libltdl
		 ./configure --enable-ltdl-install
		 make
		 make install


	6 安装mhash	
		Mhash是基于离散数学原理的不可逆向的php加密方式扩展库,其在默认情况下不开启。mhash的可以用于创建校验数值,
		消息摘要,消息认证码,以及无需原文的关键信息保存(如密码)等。
		cd /lamp/mhash-0.9.9.9
		./configure 
		make
		make install
	7. 安装mcrypt	
		mcrypt 是 php 里面重要的加密支持扩展库。Mcrypt库支持20多种加密算法和8种加密模式
		cd /lamp/mcrypt-2.6.8
		首先定义一个环境变量
		export LD_LIBRARY_PATH=/usr/local/libmcrypt/lib:/usr/local/lib  \
		./configure --with-libmcrypt-prefix=/usr/local/libmcrypt
		#以上为一条命令。LD_LIBRARY_PATH用于指定libmcrypt和mhash的库的位置。
		--with-libmcrypt-prefix用于指定libmcrypt软件位置
		make
		make install
		#mcrypt没有安装完成,这是php的模块,需要等php安装完成之后,再继续安装

	 8. 安装zlib			
		zlib是提供数据压缩用的函式库,由Jean-loup Gailly与Mark Adler所开发,初版0.9版在1995年5月1日发表。
		zlib使用DEFLATE算法,最初是为libpng函式库所写的,后来普遍为许多软件所使用。此函式库为自由软件,使用zlib授权
		 cd /lamp/zlib-1.2.3			
		 CFLAGS="-O3 -fPIC" ./configure./configure
		 make
		 make install  >>  /root/zlib.log
		 * zlib指定安装目录可能造成libpng安装失败,故不指定,为卸载方便,建议make install执行结果输出到安装日志文件,便于日后卸载

	 9 安装libpng	
		libpng 软件包包含 libpng 库.这些库被其他程式用于解码png图片
		 cd /lamp/libpng-1.2.31
		 ./configure --prefix=/usr/local/libpng
		 make
		 make install
	 10 安装jpeg6			
		用于解码.jpg和.jpeg图片
			 mkdir /usr/local/jpeg6	
			 mkdir /usr/local/jpeg6/bin
			 mkdir /usr/local/jpeg6/lib
			 mkdir /usr/local/jpeg6/include
			 mkdir -p /usr/local/jpeg6/man/man1
			#目录必须手工建立
			 cd /lamp/jpeg-6b
			 ./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static
			 make	
				*如果报错 执行 
					yum install -y "libtool*" 
					cp /usr/share/libtool/config/config.sub  .  
					cp /usr/share/libtool/config/config.guess .  
			make install
			 * --enable-shared与--enable-static参数分别为建立共享库和静态库使用的libtool

	 11 安装freetype			
		FreeType库是一个完全免费(开源)的、高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件,
		包括TrueType, OpenType, Type1, CID, CFF, Windows FON/FNT, X11 PCF等。支持单色位图、反走样位图的渲染
		。FreeType库是高度模块化的程序库,虽然它是使用ANSI C开发,但是采用面向对象的思想,
		因此,FreeType的用户可以灵活地对它进行裁剪。
		 cd /lamp/freetype-2.3.5
		./configure --prefix=/usr/local/freetype/
		 make
		 make install


	12 安装GD库		
		GD库,是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片。 
		在网站上GD库通常用来生成缩略图,或者用来对图片加水印,或者用来生成汉字验证码,或者对网站数据生成报表等。
		cd /lamp/gd-2.0.35
		* png错误,修改方法:
			vi gd_png.c
			把 #include “png.h” 替换为 #include "/usr/local/libpng/include/png.h"
		 ./configure --prefix=/usr/local/gd2/ --with-jpeg=/usr/local/jpeg6/ --with-freetype=/usr/local/freetype/ --with-png=/usr/local/libpng/
		 make 
		 make install
LAMP架构搭建		 * 若前面配置zlib时没有指定安装目录,gd配置时不要添加--with-zlib=/usr/local/zlib/参数
	
安装 Apache
	1. 安装 Apache
		伪用户
		configure: error: Bundled APR requested but not found at ./srclib/. Download and
		unpack the corresponding apr and apr-util packages to ./srclib/.
		#如果报错,则:
		tar zxvf apr-1.4.6.tar.gz
		tar zxvf apr-util-1.4.1.tar.gz
		cp -r /lamp/apr-1.4.6 /lamp/httpd-2.4.7/srclib/apr
		cp -r /lamp/apr-util-1.4.1 /lamp/httpd-2.4.7/srclib/apr-util
		#解压 apr 和 apr-util,复制并取消版本号
		configure: error: pcre-config for libpcre not found. PCRE is required and available
		from
		#如果报错,则:
		tar zxvf pcre-8.34.tar.gz
		cd pcre-8.34
		./configure && make && make install
		checking whether to enable mod_ssl... configure: error: mod_ssl has been requested
		but can not be built due to prerequisite failures
		#如果报错,则:
		yum install openssl-devel
		/usr/local/apache2/conf/
		动态  静态()
		安装 apache
		cd /lamp/httpd-2.4.7
		./configure --prefix=/usr/local/apache2/ --sysconfdir=/usr/local/apache2/etc/
		--with-included-apr --enable-so --enable-deflate=shared
		--enable-expires=shared --enable-rewrite=shared
		make
		make install
		* 若 前 面 配 置 zlib 时 没 有 指 定 安 装 目 录 , Apache 配 置 时 不 要 添 加
		--with-z=/usr/local/zlib/参数
	2.启动 Apache 测试:
		/usr/local/apache2/bin/apachectl start
		ps –aux | grep httpd
		netstat –tlun | grep :80
		* 若启动时提示/usr/local/apache2/modules/mod_deflate.so 无权限,可关闭 SELinux
		或者执行命令 chcon -t texrel_shlib_t /usr/local/apache2/modules/mod_deflate.so ,
		类似此类.so 文件不能载入或没有权限的问题,都是 SELinux 问题,使用命令: “chcon -t
		texrel_shlib_t 文件名”即可解决,MySQL 和 Apache 也可能有类似问题。
		通过浏览器输入地址访问:http://Apache 服务器地址,若显示“It works”即表明 Apache
		正常工作
	3.设置 Apache 系统引导时启动:
		echo "/usr/local/apache2/bin/apachectl start" >> /etc/rc.d/rc.local
	
安装 MySQL 
	1 安装 ncurses
		Ncurses 提供字符终端处理库,包括面板和菜单。它提供了一套控制光标,建立
		窗口,改变前景背景颜色以及处理鼠标操作的函数。使用户在字符终端下编写应
		用程序时绕过了那些恼人的底层机制。简而言之,他是一个可以使应用程序直接
		控制终端屏幕显示的函数库。
		1、
		yum -y install ncurses-devel
		注:如果报错,包找不到,是*通配符没有识别,给文件名加双引号 “ncurses*”
		2、源代码编译:
		cd /lamp/ncurses-5.9
		./configure --with-shared --without-debug --without-ada --enable-overwrite
		make
		make install
		* 若不安装 ncurses 编译 MySQL 时会报错
		* --without-ada 参数为设定不编译为 ada 绑定,因进入 chroot 环境不能使用 ada ;
		--enable-overwrite 参数为定义把头文件安装到/tools/include 下而不是
		/tools/include/ncurses 目录
		* --with-shared  生成共享库
	2.安装 cmake 和 bison
		mysql 在 5.5 以后,不再使用./configure 工具,进行编译安装。而使用 cmake 工具替代
		了./configure 工具。cmake 的具体用法参考文档 cmake 说明。
		bison 是一个自由软件,用于自动生成语法分析器程序,可用于所有常见的操作系
		统
		yum -y install cmake
		yum -y install bison
	3. 安装 MySQL 
		伪用户 mysql 当安装Apache已经存在
		groupadd mysql
		useradd -g mysql mysql
		* 添加用户组 mysql ,将 mysql 用户默认组设置为 mysql 用户组
		cd /lamp/mysql-5.5.23

		cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
		-DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DEXTRA_CHARSETS=all
		-DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
		-DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1
		-DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1
		-DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306

			-DCMAKE_INSTALL_PREFIX=/usr/local/mysql 安装位置
			-DMYSQL_UNIX_ADDR=/tmp/mysql.sock  指定 socket(套接字)文件位置
			-DEXTRA_CHARSETS=all  扩展字符支持
			-DDEFAULT_CHARSET=utf8 默认字符集
			-DDEFAULT_COLLATION=utf8_general_ci 默认字符校对
			-DWITH_MYISAM_STORAGE_ENGINE=1 安装 myisam 存储引擎
			-DWITH_INNOBASE_STORAGE_ENGINE=1 安装 innodb 存储引擎
			-DWITH_MEMORY_STORAGE_ENGINE=1 安装 memory 存储引擎
			-DWITH_READLINE=1 支持 readline 库
			-DENABLED_LOCAL_INFILE=1 启用加载本地数据
			-DMYSQL_USER=mysql 指定 mysql 运行用户
			-DMYSQL_TCP_PORT=3306  指定 mysql 端口
		make
		make install
		
		#如果报错,清除缓存,请使用以上命令
			make clean
			rm -rf CMakeCache.txt
		#修改 mysql 目录权限			
			cd /usr/local/mysql/
			chown -R mysql .
			chgrp -R mysql .
		#创建数据库授权表,
			初始化数据库
				/usr/local/mysql/scripts/mysql_install_db --user=mysql
			root  /etc/passwd
			root  user 表 mysql 库 /usr/local/mysql/data
		#修改 mysql 目录权限
			chown -R root .
			chown -R mysql data
		#复制 mysql 配置文件
			cp support-files/my-medium.cnf /etc/my.cnf
		#在进行初始化数据库
			/usr/local/mysql/scripts/mysql_install_db --user=mysql
	4.启动 MySQL 服务:
		1.用原本源代码的方式去使用和启动 mysql
			/usr/local/mysql/bin/mysqld_safe --user=mysql &  # &并且放入后台
		2.重启Linux以后还要自启动:
			vi /etc/rc.local
			/usr/local/mysql/bin/mysqladmin -uroot -p shutdown 关闭mysql
			/usr/local/mysql/bin/mysqld_safe --user=mysql &   #此处的意思是使用mysql 用户初始化 mysql数据库
		3.设定 mysql 密码
			* 给 mysql 用户 root 加密码 123
			* 注意密码不能写成 “123” 
			/usr/local/mysql/bin/mysqladmin -u root password 123  #此处的意思是使用mysql 用户初始化 mysql数据库
	
			/usr/local/mysql/bin/mysql -u root -p   #此处的意思是登陆mysql
				mysql>show databases;
				mysql>use test;
				mysql>show tables;
				mysql>\s  #查看字符集是否改为 utf8
				* 进入 mysql 以后用 set 来改密码
				mysql> exit
				* 登录 MySQL 客户端控制台设置指定 root 密码
		4.清空MySql历史命令 
			history -c
安装 PHP
	1.编译前确保系统已经安装了 libtool 和 libtool-ltdl 软件包,安装:
		yum -y install “libtool*”
		yum -y install “libtool-ltdl*”
	
		 php 5.4 的 bug,检测 gd 库有问题,需要手工修改
			vi /usr/local/gd2/include/gd_io.h
				typedef struct gdIOCtx
				{
					……
					void (*data);
					#加入此句
				}
	2.安装PHP5.4
		cd /lamp/ php-5.4.25
		./configure --prefix=/usr/local/php/
		--with-config-file-path=/usr/local/php/etc/
		--with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql/
		--with-libxml-dir=/usr/local/libxml2/ --with-jpeg-dir=/usr/local/jpeg6/
		--with-png-dir=/usr/local/libpng/ --with-freetype-dir=/usr/local/freetype/
		--with-gd=/usr/local/gd2/ --with-mcrypt=/usr/local/libmcrypt/
		--with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap
		--enable-mbstring=all --enable-sockets --with-pdo-mysql=/usr/local/mysql
		--without-pear

		make
		make install

		若前面配置 zlib 时没有指定安装目录,PHP 配置时不要添加--with-zlib-dir=/usr/local/zlib/参数
		
		选项:
			--with-config-file-path=/usr/local/php/etc/ 指定配置文件目录
			--with-apxs2=/usr/local/apache2/bin/apxs  指定 apache 动态模块位置
			--with-mysql=/usr/local/mysql/ 指定 mysql 位置
			--with-libxml-dir=/usr/local/libxml2/  指定 libxml 位置
			--with-jpeg-dir=/usr/local/jpeg6/  指定 jpeg 位置
			--with-png-dir=/usr/local/libpng/  指定 libpng 位置
			--with-freetype-dir=/usr/local/freetype/  指定 freetype 位置
			--with-gd=/usr/local/gd2/  指定 gd 位置
			--with-mcrypt=/usr/local/libmcrypt/ 指定 libmcrypt 位置
			--with-mysqli=/usr/local/mysql/bin/mysql_config 指定 mysqli 位置
			--enable-soap  支持 soap 服务
			--enable-mbstring=all  支持多字节,字符串
			--enable-sockets  支持套接字
			--with-pdo-mysql=/usr/local/mysql  启用 mysql 的 pdo 模块支持
			--without-pear 不安装 pear(安装 pear 需要连接互联网。 PEAR是PHP扩展与应用库)
	3.生成 php.ini
		cp /lamp/php-5.4.25/php.ini-production /usr/local/php/etc/php.ini
	4.测试 Apache 与 PHP 的连通性,看 Apache 是否能解析 php 文件
		vi /usr/local/apache2/etc/httpd.conf
		在最后添加(注意大小写) * .phtml 为将.phps 做为 PHP 源文件进行语法高亮显示
			AddType application/x-httpd-php .php .phtml .phps
	
	5.重启 Apache 服务:
		/usr/local/apache2/bin/apachectl stop
		/usr/local/apache2/bin/apachectl start
			* Apache 无法启动,提示 cannot restore segment prot after reloc: Permission denied
			错误,为 SELinux 问题,可关闭 SELinux 或者执行命令 chcon -t texrel_shlib_t
			/usr/local/apache2/modules/libphp5.so
	6.测试:vi /usr/local/apache2/htdocs/test.php
			<?php
			phpinfo();
			?>
	          通过浏览器输入地址访问:http://Apache 服务器地址/test.php
			Rpm 包安装的网页默认目录  /var/www/html/
			* 有时第一次浏览器测试会失败,关闭浏览器重启再尝试即可,非编译错误

安装 memcache
		Memcache 是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统
	一的巨大的 hash 表,它能够用来存储各种格式的数据,包括图像、视频、文件以
	及数据库检索的结果等。 简单的说就是将数据调用到内存中, 然后从内存中读取,
	从而大大提高读取速度
	1.安装memcache客户端
		yum -y install zlib-devel
		cd memcache-3.0.8
		/usr/local/php/bin/phpize
		./configure --with-php-config=/usr/local/php/bin/php-config
		make && make install
	2.#编译安装 mcrypt
		cd /lamp/php-5.4.25/ext/mcrypt/
		/usr/local/php/bin/phpize
		./configure --with-php-config=/usr/local/php/bin/php-config
		--with-mcrypt=/usr/local/libmcrypt/
		make
		make install
	3.#php 安装完成后,通过这些命令安装 mcrypt 模块
		修改 /usr/local/php/etc/php.ini
			#打开注释,并修改
				extension_dir = "/usr/local/php/lib/php/extensions/no-debug-zts-20100525/"
			#添加
				extension="memcache.so";
				extension="mcrypt.so";
	4.#重启 apache
		phpinfo 中可以找到这两个模块
安装 memcache服务器端
		首先安装依赖包 libevent
			yum -y install “libevent*” 
	1.在 CentOS 6.3 第二张光盘中,请换盘
		cd /lamp/memcached-1.4.17
			./configure --prefix=/usr/local/memcache
			make && make install
	2.添加 memcache 用户,此用户不用登录,不设置密码
		useradd memcache
	3.启动memcached
		/usr/local/memcache/bin/memcached -u memcache &
		netstat an | grep :11211
		telnet 192.168.10.1 11211
		stats
	4.写入自启动:
		vi /etc/rc.d/rc.local
			/usr/local/memcache/bin/memcached -umemcache &
安装 phpMyAdmin
	1.安装phpMyAdmin
		cp -r phpMyAdmin-4.1.4-all-languages /usr/local/apache2/htdocs/phpmyadmin
	2.修改配置文件
		cd /usr/local/apache2/htdocs/phpmyadmin
		cp config.sample.inc.php config.inc.php
		vi config.inc.php 
			把$cfg['Servers'][$i]['auth_type'] = 'cookie';修改$cfg['Servers'][$i]['auth_type'] = 'http';
		* 设置 auth_type 为 http ,即设置为 HTTP 身份认证模式
	3.通过浏览器输入地址访问phpmyadmin
		http://Apache 服务器地址/phpmyadmin/index.php
			用户名为 root ,密码为 MySQL 设置时指定的 root 密码(lampbrother)
		GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;
		sql 语句,不是 linux 命令
测试搭建PHPCMS
	ZLIB 扩展 × 建议开启  不支持Gzip功能 
	FTP 扩展  不支持FTP形式文件传送
		重新动态安装PHP并添加相应的模块
		重新 make make install
	修改phpcms目录的拥有者	ACL 权限 也就是修改Apache匿名用户的权限 PHP是和Apache使用相同的用户
		setfacl -m u:daemon:rwx -R .  递归赋予ACL权限

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值