Apache2.4 + MySQL5.5 + PHP5.5 FCGI方式运行
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Apache2.4 + MySQL5.5 + PHP5.5 FCGI方式运行,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含5164字,纯文字阅读大概需要8分钟。
内容图文
1. Apache2.4.10
Apache 的依赖关系 Apr&& apr-utils
2. MySQL5.5.38
MySQL 编译方式采用通用二进制格式
3. PHP5.5.15
PHP Apache 以 FCGI 的方式编译
4. 配置结合 FCGI 运行
配置默认文档 index.php
配置 AddType 支持 PHP
配置 php-fpm 支持 PHP 解析
5. 配置 xcache 加速 PHP
安装 Apache2.4.10
依赖包:
wget http://mirror.bit.edu.cn/apache/apr/apr-1.5.1.tar.gz
wget http://mirror.bit.edu.cn/apache/apr/apr-util-1.5.3.tar.gz
wget http://mirror.bit.edu.cn/apache/httpd/httpd-2.4.10.tar.gz
# tarzxvf apr-1.5.1.tar.gz
# cdapr-1.5.1
#./configure --prefix=/data/apr
如果 configure 报 libtoolT 的错误,请删除 configure 文件中如下此行
30145 $RM "$cfgfile"
# make && make install
# tarzxvf apr-util-1.5.3.tar.gz
# cdapr-util-1.5.3
#./configure --prefix=/data/apr-util--with-apr=/data/apr/
#make && make install
# tarzxvf httpd-2.4.10.tar.gz
# cdhttpd-2.4.10
#./configure --prefix=/data/apache --sysconfdir=/etc/httpd --enable-so --enable-rewirte --enable-ssl --enable-cgi--enable-cgid --enable-modules=most --enable-mods-shared=most --enable-mpms-shared=all--with-apr=/data/apr --with-apr-util=/data/apr-util/
#make && make install
安装 MySQL5.5.38
wget http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.38-linux2.6-x86_64.tar.gz
# yuminstall libaio libaio-devel
#useradd -M -s /sbin/nologin mysql
# tarzxvf mysql-5.5.38-linux2.6-x86_64.tar.gz -C /usr/local/
# cd/usr/local/
# ln-s mysql-5.5.38-linux2.6-x86_64/ mysql
# chown root:mysql -R mysql
# cpsupport-files/mysql.server /etc/init.d/mysqld
#chmod +x /etc/init.d/mysqld
# cpsupport-files/my-huge.cnf /etc/my.cnf
#mkdir -p /data/mysql/data
#chown -R mysql:mysql /mydata/data
#scripts/mysql_install_db --user=mysql--datadir=/data/mysql/data/
# sed-i ‘37a\basedir = /usr/local/mysql‘ /etc/my.cnf
# sed-i ‘38a\datadir = /data/mysql/data‘ /etc/my.cnf
# sed-i ‘39a\log-error = /data/mysql/data/mysql_error.log‘ /etc/my.cnf
# sed-i ‘40a\pid-file = /data/mysql/data/mysql.pid‘ /etc/my.cnf
# sed-i ‘41a\skip-name-resolve‘ /etc/my.cnf
#chkconfig --add mysqld
#chkconfig mysqld on
#service mysqld start
输出 MySQL 的头文件:
# ln-sv /usr/local/mysql/include /usr/include/mysql
输出 MySQL 的库文件路径
#echo ‘/usr/local/mysql/lib‘ > /etc/ld.so.conf.d/mysql.conf
#ldconfig
输出 MySQL 的命令到全局
# cat/etc/profile.d/mysql.sh
exportPATH=$PATH:/usr/local/mysql/bin
#source /etc/profile.d/mysql.sh
安装 PHP5.5.15
wget http://cn2.php.net/distributions/php-5.5.15.tar.gz
如果要让 PHP 支持 mcrypt 扩展,必须手动安装 libmcrypt-2.5.7.tar.gz
# tarzxvf libmcrypt-2.5.7.tar.gz
# cdlibmcrypt-2.5.7
#./configure --prefix=/data/libmcrypt
#make && make install
# tarzxvf php-5.5.15.tar.gz
# cdphp-5.5.15
./configure --prefix=/data/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-mcrypt=/data/libmcrypt/--with-config-file-path=/etc/ --with-config-file-scan-dir=/etc/php.d --with-bz2--enable-fpm
#make && make install
# cpphp.ini-production /etc/php.ini
# cpsapi/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
# cp/data/php/etc/php-fpm.conf.default /data/php/etc/php-fpm.conf
# vim/data/php/etc/php-fpm.conf
pm.max_children= 50
pm.start_servers= 5
pm.min_spare_servers= 2
pm.max_spare_servers= 8
#service php-fpm start
配置 Apache
1 、启用 httpd 的相关模块
在 Apachehttpd 2.4 以后已经专门有一个模块针对 FastCGI 的实现,此模块为 mod_proxy_fcgi.so ,它其实是作为 mod_proxy.so 模块的扩充,因此,这两个模块都要加载
LoadModuleproxy_module modules/mod_proxy.so
LoadModuleproxy_fcgi_module modules/mod_proxy_fcgi.so
2 、配置虚拟主机支持使用 fcgi
在相应的虚拟主机中添加类似如下两行。
ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$fcgi://127.0.0.1:9000/PATH/TO/DOCUMENT_ROOT/$1
例如:
<VirtualHost*:80>
DocumentRoot "/data/wwwroot"
ServerName xxx.com
ServerAlias www.xxx.com
ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$fcgi://127.0.0.1:9000/data/wwwroot/$1
<Directory"/data/wwwroot/">
Options none
AllowOverride none
Require all granted
</Directory>
</VirtualHost>
ProxyRequestsOff :关闭正向代理
ProxyPassMatch :把以 .php 结尾的文件请求发送到 php-fpm 进程, php-fpm 至少需要知道运行的目录和 URI ,所以这里直接在 fcgi://127.0.0.1:9000 后指明了这两个参数,其它的参数的传递已经被 mod_proxy_fcgi.so 进行了封装,不需要手动指定。
3 、编辑 apache 配置文件 httpd.conf ,让 apache 能识别 php 格式的页面,并支持 php 格式的主页
# vim /etc/httpd/httpd.conf
1 、添加如下二行
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
2 、定位至 DirectoryIndexindex.html
修改为:
DirectoryIndex index.php index.html
补充: Apachehttpd 2.4 以前的版本中,要么把 PHP 作为 Apache 的模块运行,要么添加一个第三方模块支持 PHP-FPM 实现。
安装 xcache3.10
wget http://xcache.lighttpd.net/pub/Releases/3.1.0/xcache-3.1.0.tar.gz
# tarzxvf xcache-3.1.0.tar.gz
# cdxcache-3.1.0
#/data/php/bin/phpize
#./configure --enable-xcache--with-php-config=/data/php/bin/php-config
#make && make install
#mkdir -p /etc/php.d
# cpxcache.ini /etc/php.d/
# vim/etc/php.d/xcache.ini
extension= /data/php/lib/php/extensions/no-debug-non-zts-20121212/xcache.so
#/etc/init.d/php-fpm restart
本文出自 “Sword Slave” 博客,请务必保留此出处http://diudiu.blog.51cto.com/6371183/1532809
原文:http://diudiu.blog.51cto.com/6371183/1532809
内容总结
以上是互联网集市为您收集整理的Apache2.4 + MySQL5.5 + PHP5.5 FCGI方式运行全部内容,希望文章能够帮你解决Apache2.4 + MySQL5.5 + PHP5.5 FCGI方式运行所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。