




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
CentOS下编译安装LAMP并分离为多台服务器说明:Linux86:Apache主机 Linux87:PHP主机 Linux88:MySQL主机内部测试;需在windows下需要更改hosts文件解析到httpd的主机例子中的hosts文件添加:6 6 LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写:1、Linux;操作系统;2、Apache;网页服务器;3、MariaDB或MySQL,数据库管理系统(或者数据库服务器);4、PHP、Perl或Python,脚本语言;在编译安装之前我们需要先了解下它们之间分开的工作模式:上图大致的标出Apache、php和mysql分离各自为单独服务器时的工作模式;下面就直接进行编译安装;首先准备好三个虚拟机。测试机版本:Linux86#lsb_release -aLSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarchDistributorID: CentOSDescription: CentOS release6.5(Final)Release:6.5Codename: Final由于其中操作都是插入代码的;所以命令执行过程并没有把代码都贴出来,只贴出最后几行;一、编译安装Apache2.4.91、解决依赖关系:Linux86#yum grouplist#Installed Groups:Additional DevelopmentBaseConsole internet toolsDesktopDesktop PlatformDevelopment tools#查看包组是否安装Server Platform Development#查看包组是否安装如未安装;请先安装这两个包组#Linux86#rpm -qa pcre-develpcre-devel-7.8-6.el6.x86_64#查看是否安装;未安装需事先安装Linux86#lsapr-1.5.0.tar.bz2 apr-util-1.5.3.tar.bz2 httpd-2.4.9.tar.bz2Linux86#先安装apr包;解压后进入该目录Linux86#pwd/root/program/apr-1.5.0Linux86#./configure -prefix=/usr/local/aprconfig.status: executing default commandsconfig.status: include/apr.hisunchangedconfig.status: include/arch/unix/apr_private.hisunchanged#没有报错就继续Linux86#make & make install/usr/bin/install-c-m644build/apr_rules.out/usr/local/apr/build-1/apr_rules.mk/usr/bin/install-c-m755apr-config.out/usr/local/apr/bin/apr-1-config#没有报错就继续安装apr-util包Linux86#解压进入目录Linux86#./configure -prefix=/usr/local/apr-util -with-apr=/usr/local/apr/config.status: creating test/Makefileconfig.status: creating include/private/apu_config.hconfig.status: executing default commandsLinux86#make & make install/usr/bin/install-c-m644aprutil.exp/usr/local/apr-util/lib/usr/bin/install-c-m755apu-config.out/usr/local/apr-util/bin/apu-1-configLinux86#都以安装成功2、编译Apache:Linux86#rpm -qa httpdhttpd-2.2.15-29.el6.centos.x86_64#系统自己本身已安装了httpd2.2版本的;这里编译2.4的;但是老版本不需要卸载;#因为卸载后会造成依赖关系不稳定;且后续安装模块时还是会自动安装上的;#编译是只要不指定到默认路径即可;确保安装前原来的是停止的;且关闭开启自动启动#Linux86#./configure -prefix=/usr/local/apache -sysconfdir=/etc/httpd24 -enable-so -enable-ssl -enable-cgi -enable-rewrite -with-zlib -with-pcre -with-apr=/usr/local/apr -with-apr-util=/usr/local/apr-util -enable-modules=most -enable-mpms-shared=all -with-mpm=event -enable-proxy -enable-proxy-fcgi参数可以通过./configure-help查看;开启自己需要的即可#如没有报错直接下一步安装Linux86#make & make installmkdir/usr/local/apache/buildInstalling man pagesandonline manualmkdir/usr/local/apache/manmkdir/usr/local/apache/man/man1mkdir/usr/local/apache/man/man8mkdir/usr/local/apache/manualmake1: Leaving directory /root/program/httpd-2.4.9#安装完成Linux86#3、配置Apache:#由于之前的httpd没有卸载;那么可以cp一个启动脚本当目前的httpd脚本;更改下里面的参数#Linux86#cp /etc/rc.d/init.d/httpd /etc/rc.d/init.d/httpd24Linux86#vi /etc/rc.d/init.d/httpd24# Path to the apachectl script, server binary, and short-form for messages.#以下几个变量定义为目前的路径;并在主配置文件中更改对应的值achectl=/usr/local/apache/bin/apachectlhttpd=$HTTPD-/usr/local/apache/bin/httpdprog=httpdpidfile=$PIDFILE-/var/run/httpd/httpd.pidlockfile=$LOCKFILE-/var/lock/subsys/httpd24RETVAL=0STOP_TIMEOUT=$STOP_TIMEOUT-10#修改主配置文件Linux86#vi /etc/httpd24/httpd.conf# same ServerRoot for multiple httpd daemons, you will need to change at# least PidFile.#ServerRoot/usr/local/apachepifile/var/run/httpd/httpd.pid#加一行pid文件路径;与脚本文件对应#保存退出Linux86#service httpd24 startStarting httpd: OK Linux86#ss -tnlState Recv-Q Send-Q Local Address:Port Peer Address:PortLISTEN0128:111:*LISTEN0128*:111*:*LISTEN0128:80:*#80端口已监听到这里Apache已编译安装完成了;也可以在浏览器输入IP地址测试下。二、编译安装PHP编译之前都是需要检查开发环境;需要安装的包是否都已安装Linux87#rpm -qa bzip2-devel libmcrypt-devel libxml2-devellibxml2-devel-2.7.6-14.el6.x86_64bzip2-devel-1.0.5-7.el6_0.x86_64libmcrypt-devel-2.5.8-9.el6.x86_64Linux87#如未安装;需要先用yum安装上1、这边是每个服务单独作为一个服务器;所以编译时与放在一台机器上是有分别的;而且也不需要先安装mysql;下面来直接编译PHPLinux87#lsphp-5.4.26.tar.bz2 xcache-3.1.0.tar.bz2Linux87#tar xf php-5.4.26.tar.bz2Linux87#./configure -prefix=/usr/local/php -enable-fpm -with-config-file-path=/etc -with-config-file-scan-dir=/etc/php.d -with-libxml-dir=/usr -with-openssl -with-zlib -with-bz2 -with-jpeg-dir -with-png-dir -with-freetype-dir -enable-mbstring -with-mcrypt -enable-sockets -with-mysql=mysqlnd -with-mysqli=mysqlnd -with-pdo-mysql=mysqlnd#注意:-with-mysql几个选项都要为mysqlnd;因为mysql服务器单独为另一台机器+-+| License: | This softwareissubject to the PHP License, availableinthis | distributioninthefileLICENSE. By continuing this installation | process, you are bound by the terms of this license agreement. | If you donotagree with the terms of this license, you must abort | the installation process at this point. |+-+Thank youforusing PHP.出现上述字符就说明可以继续安装了;Linux87#make & make installInstalling PEAR environment:/usr/local/php/lib/php/PEAR Archive_Tar-installed:1.3.11PEAR Console_Getopt-installed:1.3.1warning: pear/PEAR requires packagepear/Structures_Graph(recommended version1.0.4)warning: pear/PEAR requires packagepear/XML_Util(recommended version1.2.1)PEAR PEAR-installed:1.9.4Wrote PEAR system configfileat:/usr/local/php/etc/pear.confYou may want to add:/usr/local/php/lib/php to your php.ini include_pathPEAR Structures_Graph-installed:1.0.4PEAR XML_Util-installed:1.2.1/root/program/php-5.4.26/build/shtool install-c ext/phar/phar.phar/usr/local/php/binln-s-f/usr/local/php/bin/phar.phar/usr/local/php/bin/pharInstalling PDO headers:/usr/local/php/include/php/ext/pdo/Linux87#到这里说明安装成功了;可能会有些报错说某些软件版本太低2、下面配置PHP配置php的配置文件Linux87#cp php.ini-production /etc/php.ini配置一个启动脚本Linux87#cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm给执行权限Linux87#chmod +x /etc/rc.d/init.d/php-fpm加入chkconfigLinux87#chkconfig -add php-fpmLinux87#chkconfig php-fpm onLinux87#chkconfig -list php-fpmphp-fpm0:off1:off2:on3:on4:on5:on6:offLinux87#cd /usr/local/php/etc/配置php-fpm配置文件Linux87#cp php-fpm.conf.default php-fpm.conf更改配置文件Linux87#vi php-fpm.confglobal; Pidfile; Note: the default prefixis/usr/local/php/var; Default Value: nonepid=run/php-fpm.pid#这项启用;下面几项对应的改为相应的值即可;pm.max_children=50; The number of child processes created on startup.; Note: Used only when pmissettodynamic; Default Value: min_spare_servers+(max_spare_servers-min_spare_servers)/2pm.start_servers=5; The desired minimum number of idle server processes.; Note: Used only when pmissettodynamic; Note: Mandatory when pmissettodynamicpm.min_spare_servers=3; The desired maximum number of idle server processes.; Note: Used only when pmissettodynamic; Note: Mandatory when pmissettodynamicpm.max_spare_servers=8#更改完成后启动:Linux87#service php-fpm startStarting php-fpm doneLinux87#ss -tunl | grep 9000tcp LISTEN0128:9000*:*#由于php-rpm是监听在9000端口,查看启动正常3、与Apache整合到一起Linux87#vi /usr/local/php/etc/php-fpm.conf定位到listen;IP地址更改为别人可用访问进来的IP地址;/path/to/unix/socket-to listen on a unix socket.; Note: This valueismandatory.listen=7:9000Linux87#service php-fpm restartLinux87#ss -tnul | grep 9000tcp LISTEN01287:9000*:*Linux87#Linux87#cd /var/www/Linux87#mkdir pipi soul dark mydamin#建立几个目录作为虚拟主机目录4、配置Apache虚拟主机来使用PHP到Apache主机上;找一个目录下面建立几个不同的目录作为虚拟主机目录;Linux86#cd /usr/local/apache/Linux86#mkdir -pv www/pipi,soul,dark,myadmin编辑主配置文件;开启虚拟主机;关闭中心主机Linux86#vi /etc/httpd24/httpd.conf# DocumentRoot: The directory out of which you will serve your# documents. By default, all requests are taken from this directory, but# symbolic links and aliases may be used to point to other locations.#DocumentRoot /usr/local/apache/htdocs 注释掉# Virtual hostsInclude/etc/httpd24/extra/httpd-vhosts.conf#开启这项#定位AddType;添加下面两行AddType application/x-httpd-php .phpAddType application/x-httpd-php-source .phps定位至DirectoryIndex# DirectoryIndex: sets the file that Apache will serve if a directory# is requested.#DirectoryIndex index.php index.html#添加index.php定位到LoadModuleLoadModule proxy_module modules/mod_proxy.so#开启#LoadModule proxy_connect_module modules/mod_proxy_connect.so#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so#LoadModule proxy_http_module modules/mod_proxy_http.soLoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so#开启#Linux86#vi /etc/httpd24/extra/httpd-vhosts.conf 编辑虚拟主机ServerAdmin DocumentRoot/usr/local/apache/www/pipi#指定Apache主机的站点目录ServerName #指定主机名ServerAlias #主机别名ErrorLog/usr/local/apache/logs/pipi.error_log#错误日志路径及名称CustomLog/usr/local/apache/logs/pipi.access_logcombined#访问日志路径及名称ProxyRequests Off#关闭正向代理ProxyPassMatch /(.*.php)$ fcgi:/7:9000/var/www/pipi/$1#反向代理到PHP主机的站点目录#目录的访问权限配置Options noneAllowOverride noneRequireallgrantedServerAdmin DocumentRoot/usr/local/apache/www/soulServerName ServerAlias ErrorLog/usr/local/apache/logs/soul.error_logCustomLog/usr/local/apache/logs/soul.access_logcombinedProxyRequests OffProxyPassMatch /(.*.php)$ fcgi:/7:9000/var/www/soul/$1Options noneAllowOverride noneRequireallgranted5、测试Linux87#cd /var/www/pipi/Linux87#vi index.php#保存退出;在浏览器输入虚拟主机中的主机名;如上显示;就说明Apache和PHP已成功整合在一起了;在为PHP安装xcache加速器以提高性能Linux87#lsphp-5.4.26php-5.4.26.tar.bz2 xcache-3.1.0.tar.bz2Linux87#tar xf xcache-3.1.0.tar.bz2Linux87#cd xcache-3.1.0Linux87#/usr/local/php/bin/phpizeConfiguringfor:PHP Api Version:20100412Zend Module Api No:20100525Zend Extension Api No:220100525Linux87#Linux87#./configure -enable-xcache -with-php-config=/usr/local/php/bin/php-configLinux87#make & make install#要复制/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/这行内容如之前没有/etc/php.d目录需先创建Linux87#cp xcache.ini /etc/php.d/xcache-common; non-Windows example:extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/xcache.so 把前面路径加上重启下php-fpmzaic在此访问之前的测试页面可以看到红色区域内已出现xcache和版本信息了。三、配置MySQL1、这里使用的是解压包;解压完成后直接配置即可使用配置前先准备已下工作Linux88#groupadd -r mysqlLinux88#useradd -r -g mysql -s /sbin/nologin mysql#先创建一个逻辑卷;这里就不演示创建逻辑卷的过程了;逻辑卷也不是实验必须创建的;实验时可以不用创建Linux88#df -ThFilesystemTypeSize Used Avail Use%Mounted on/dev/mapper/sqlvg-lvsql ext49.9G151M9.2G2%/Mysql/data#配置mysql#解压到指定路径Linux88#tar xf mysql-5.5.33-linux2.6-x86_64.tar.gz -C /usr/local/Linux88#cd /usr/local/Linux88#ln -sv /usr/local/mysql-5.5.33-linux2.6-x86_64/ /usr/local/mysql/usr/local/mysql - /usr/local/mysql-5.5.33-linux2.6-x86_64/Linux88#cd mysqlLinux88#chown -R root.mysql *#初始化数据库;并指定其用户和data目录Linux88#scripts/mysql_install_db -user=mysql -datadir=/Mysql/dataLinux88#ls /Mysql/data/lost+found mysql mysql-bin.000001mysql-bin.000002mysql-bin.index performance_schema test#没有报错并生成以上文件即可Linux88#cp support-files/f /etc/f 配置一个配置文件Linux88#vi /etc/f 更改已下配置选项;具体选项根据自己需要配置# The MySQL servermysqldport=3306socket=/tmp/mysql.sockskip-external-lockingkey_buffer_size=256Mmax_allowed_packet=1Mtable_open_cache=256sort_buffer_size=1Mread_buffer_size=1Mread_rnd_buffer_size=4Mmyisam_sort_buffer_size=64Mthread_cache_size=8query_cache_size=16M# Try number of CPUs*2 for thread_concurrencythread_concurrency=4datadir=/Mysql/data 新增一行提供一个服务脚本Linux88#cp support-files/mysql.server /etc/rc.d/init.d/mysqldLinux88#chmod +x /etc/rc.d/init.d/mysqldLinux88#chkconfig -add mysqldLinux88#chkconfig mysqld onLinux88#chkconfig -list mysqldmysqld0:off1:off2:on3:on4:on5:on6:offLinux88#service mysqld startStarting MySQL. OK #启动成功后导出其他信息Linux88#vi /etc/profile.d/mysql.shexport PATH=/usr/local/mysql/bin:$PATHLinux88#ln -sv /usr/local/mysql/include/ /usr/include/mysql/usr/include/mysql - /usr/local/mysql/include/Linux88#Linux88#vi /etc/man.config定位到MANPATH#MANPATH/usr/manMANPATH/usr/share/manMANPATH/usr/local/manMANPATH/usr/local/share/manMANPATH/usr/X11R6/manMANPATH/usr/local/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年攀枝花市盐边县事业单位春季引才考核的考前自测高频考点模拟试题及答案详解(夺冠)
- 2025年上海大学公开招聘岗位(第二批)模拟试卷完整参考答案详解
- 2025届山东济南城建集团有限公司春季招聘24名笔试题库历年考点版附带答案详解
- 2025年芜湖安徽工程大学高层次人才招聘60人模拟试卷及完整答案详解一套
- 2025广东省农业科学院设施农业研究所招聘劳动合同制人员1人模拟试卷有答案详解
- 2025安徽“合肥工科同道产业园管理有限公司部分岗位外包服务”招聘4人笔试题库历年考点版附带答案详解
- 2025湖北十堰市城市发展控股集团有限公司及所属子公司招聘拟聘用人员模拟试卷含答案详解
- 2025海南保亭农水投资有限公司第二次招聘7人(代农水投公司发布)模拟试卷附答案详解(典型题)
- 2025广西南宁市博物馆招聘编外人员3人模拟试卷及参考答案详解
- 2025人民日报社山西分社公开招聘工作人员1人笔试题库历年考点版附带答案详解
- 经济学研究生组会文献汇报
- 智能化凝点试验系统多源数据融合的异构接口标准化难题及解决方案
- 防滑跌安全培训课件
- 湖南省2025年中考物理真题含答案
- 2025年山东省青岛市中考英语试卷附答案
- 彩虹超轻粘土课件
- (2025秋新版)苏教版小学数学二年级上册全册教案
- 月嫂培训教材及课件
- 2025职业病诊断化学中毒试题及答案
- 银行趣味测试题目及答案
- GB/T 704-1988热轧扁钢尺寸、外形、重量及允许偏差
评论
0/150
提交评论