马哥教育21期网络班—第12周课程+练习—-LAMP练习下

在LAMP架构中,请分别以fpm工作为独立守护进程的方式来支持http

yum groupinstall "Development Tools" "Server Platform Development"------>安装包组1、编译安装Apachehttpd-2.4.9需要较新版本的apr和apr-util,因此需要事先对其进行升级
(1)、编译安装apr
tar xf apr-1.5.0.tar.bz2
cd apr-1.5.0./configure --prefix=/usr/local/apr
make && make install
(2)、编译安装apr-util
tar xf apr-util-1.5.3.tar.bz2
cd apr-util-1.5.3
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/aprmake && make install
(3)、编译安装httpd
groupadd -r apache
useradd -r -g apache apahce
yum -y install pcre-devel ---->安装pcre-devel支持
tar xf httpd-2.4.9.tar.bz2
cd httpd-2.4.9./configure --prefix=/usr/local/apache --sysconf=/etc/httpd24 --enable-so --enable-ssl --enable-cgi --enable-rewrite --withzlib
--with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --enable-modules=most --enable-mpmsshared=
all --with-mpm=event
make && make install3、修改httpd的主配置文件,设置其Pid文件的路径
编辑vim /etc/httpd24/httpd.conf,添加如下行即可:PidFile "/var/run/httpd/httpd24.pid"提供httpd 运行脚本
cd /etc/rc.d/init.d/
cp httpd httpd24
vim httpd24
apachectl=/usr/local/apache/bin/apachectl ---------------->改的
httpd=${HTTPD-/usr/local/apache/bin/httpd} ---->查看pid路径--->/usr/local/apache/logs/httpd.pid
pidfile=${PIDFILE-/var/run/httpd/httpd24.pid}
lockfile=${LOCKFILE-/var/lock/subsys/httpd24}
chkconfig --add httpd24
chkconfig --list httpd24
httpd24 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
httpd -t ------------>检查语法
hash -r --------------->清除缓存
vim /etc/profile.d/httpd.sh
export PATH=/usr/local/apache/bin$PATH-------------->定义PATH读取
. /etc/profile.d/httpd.sh ------------->重读配置文件
编辑/etc/man.config,添加如下行即可MANPATH /usr/local/apache/man
库文件和头文件的导出
输出apche的头文件至系统头文件路径/usr/include:
这可以通过简单的创建链接实现:
ln -sv /usr/local/apache/include /usr/include/apache
输出mysql的库文件给系统库查找路径:
echo '/usr/sbin/httpd' > /etc/ld.so.conf.d/httpd24.conf
而后让系统重新载入系统库:
ldconfig
service httpd24 start
ss -tnl ---------------->查看80端口是否被监听到
ps aux | grep httpd----->查看工作模式
vim /etc/httpd24/httpd.conf ----------->配置文件LoadModule deflate_module modules/mod_deflate.so----------->启用2、编译安装mariadb
tar xf mariadb-5.5.36-linux-x86_64.tar.gz -C /usr/local
准备数据目录
mkdir -pv /mydata/data------>创建数据存放目录
配置mariadb----->
groupadd -r -g 306 mysql
useradd -r -g 306 -u 306 mysql
cd /usr/local/
ln -sv mariadb-5.5.36-linux-x86_64 mysql
cd /usr/local/mysql
chown -R root:mysql ./*
scripts/mysql_install_db --datadir=/mydata/data --user=mysql
cp supper-files/mysql.server /etc/rc.d/init.d/mysqld
chkconfig --add mysqld --->添加
chkconfig --list mysqld --->查看
mkdir /etc/mysql
cp support-files/my-large.cnf /etc/mysql/my.cnf
vim /etc/mysql/my.cnf
添加三个选项:
datadir = /mydata/datainnodb_file_per_table = on
skip_name_resolve = on
service mysqld start
/usr/local/mysql/bin/mysql_secure_installation------------>安全初始化
mysql优化
编辑/etc/man.config,添加如下行即可:MANPATH /usr/local/mysql/man7、输出mysql的头文件至系统头文件路径/usr/include:
这可以通过简单的创建链接实现:
ln -sv /usr/local/mysql/include /usr/include/mysql8、输出mysql的库文件给系统库查找路径:
echo '/usr/local/mysql/lib' > /etc/ld.so.conf.d/mysql.conf
而后让系统重新载入系统库:
ldconfig9、修改PATH环境变量,让系统可以直接使用mysql的相关命令。
vim /etc/profile.d/mysql.sh
export PATH=/usr/local/mysql/bin:$PATH. /etc/profile.d/mysql.sh
编译安装php
请配置好yum源(系统安装源及epel源)后执行如下命令:# yum -y groupinstall "Desktop Platform Development"# yum -y install bzip2-devel libmcrypt-devel libxml2-devel编译安装php-5.4.26# tar xf php-5.4.26.tar.bz2# cd php-5.4.26# ./configure --prefix=/usr/local/php5 --with-mysql=/usr/local/mysql --with-openssl --withmysqli=/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 --enable-fpm --with-mcrypt --with-config-file-path=/etc --with-configfile-
scan-dir=/etc/php.d --with-bz2#make#make test#make install为php提供配置文件:# cp php.ini-production /etc/php.ini3、配置php-fpm
为php-fpm提供SysV init脚本,并将其添加至服务列表:# cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm# chmod +x /etc/rc.d/init.d/php-fpm# chkconfig --add php-fpm# chkconfig php-fpm on为php-fpm提供配置文件:# cp /usr/local/php5/etc/php-fpm.conf.default /usr/local/php5/etc/php-fpm.conf编辑php-fpm的配置文件:# vim /usr/local/php5/etc/php-fpm.conf配置fpm的相关选项为你所需要的值,并启用pid文件(如下最后一行):
pm.max_children = 50pm.start_servers = 5pm.min_spare_servers = 2pm.max_spare_servers = 8pid = /usr/local/php5/var/run/php-fpm.pid
接下来就可以启动php-fpm了:# service php-fpm start使用如下命令来验正(如果此命令输出有中几个php-fpm进程就说明启动成功了):# ps aux | grep php-fpm默认情况下,fpm监听在127.0.0.1的9000端口,也可以使用如下命令验正其是否已经监听在相应的套接字。# netstat -tnlp | grep php-fpmtcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 689/php-fpm
三、配置httpd-2.4.91、启用httpd的相关模块
在Apache httpd 2.4以后已经专门有一个模块针对FastCGI的实现,此模块为mod_proxy_fcgi.so,它其实是作为mod_proxy.so模块的扩
充,因此,这两个模块都要加载LoadModule proxy_module modules/mod_proxy.soLoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so3、编辑apache配置文件httpd.conf,让apache能识别php格式的页面,并支持php格式的主页# vim /etc/httpd24/httpd.conf1、添加如下二行AddType application/x-httpd-php .phpAddType application/x-httpd-php-source .phps2、定位至DirectoryIndex index.html
修改为:DirectoryIndex index.php index.html
在相应的虚拟主机中添加类似如下两行。ProxyRequests OffProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/usr/local/apache/htdocs/$1测试页面index.php示例如下:
<?php$link = mysql_connect('127.0.0.1','root','mageedu');if ($link)
echo "Success...";elseecho "Failure...";
phpinfo();
mysql_close();
?>

2.4fpm.png

2.4fpm2.png

原创文章,作者:N21_ Dominic,如若转载,请注明出处:http://www.178linux.com/49003

(0)
N21_ DominicN21_ Dominic
上一篇 2016-09-26 07:43
下一篇 2016-09-26 07:43

相关推荐

  • Linux Basics

    计算机的组成及其功能:             CPU:运算器、控制器、寄存器、缓存             存储器:内存,RAM(Random Access Memory)   …

    Linux干货 2016-09-17
  • NoSQL理论基础及安装、基本操作

    30分钟开始 分布式系统理论: CAP: 一致性 可用性 分区容错性     MongoDB: 安装 crud 索引 副本集 分片   NoSQL:非关系型、分布式、不提供ACID功能 技术特点: 1、简单数据模型 2、元数据和应用数据分离(分不同服务器存储) 3、弱一致性   优势: 1、避免不必要的复杂性 2、高吞…

    2016-11-27
  • Linux无人值守安装

    前言     通常情况下,我们安装Linux操作系统的时候需要从光盘启动,通过系统光盘bootloader启动安装程序,进入交互式安装模式,由用户配置安装选项,如磁盘分区、选择安装包等操作;安装完毕后重启结束安装。在生产环境中,成百上千台服务器需要安装操作系统的时候如果也采用交互式安装模式,无疑是极其低效的。本文主要介…

    Linux干货 2015-05-18
  • 第七周

    创建一个10G分区,并格式化为ext4的文件系统 划分分区 partxprobe:重读分区表   建立文件系统,acl机制          挂载文件系统          写文件 &nbs…

    Linux干货 2016-12-11
  • 用户与组管理

    如何成为linux用户?     在linux系统中,要想从系统中获取资源、对系统进行管理和控制,就需要向系统申请一个账号,从而实现特定用途,当申请到账号后,要对它设置口令,这样用户账号就申请成功了,然后可以登陆系统,当用户登陆系统时,需要通过系统的认证,认证成功后才给予授权,在用户的使用过程中还会对用户进行审计。 为什么要设置…

    Linux干货 2016-08-08
  • varnish原理及配置事例

    Varnish是一款高性能的开源HTTP加速器(其实就是带缓存的反向代理服务),可以把http响应内容缓存到内存或文件中,从而提高web服务器响应速度。与传统的 squid 相比,varnish 具有性能更高、速度更快、管理更加方便等诸多优点,很多大型的网站都开始尝试使用 varnish 来替换 squid,这些都促进 varnish 迅速发展起来 Varn…

    Linux干货 2015-12-06

评论列表(1条)

  • 马哥教育
    马哥教育 2016-10-24 23:08

    注意排版,如果进一步部署出一个开源框架就更完美了