编译-LAMP基于fastcgi
前言
最近没更新新篇幅了,今天就来点干活,过多的也不说了下面着手干!干!干!
准备环境
centos7.5
apr-1.6.3.tar.gz
apr-util-1.6.1.tar.gz
httpd-2.4.34.tar.bz2
php-7.1.18.tar.bz2
mariadb-10.2.16-linux-x86_64.tar.gz
wordpress-4.9.4-zh_CN.tar.gz
编译HTTP
1、安装包组以及相关包
yum groupinstall "development tools"
yum install pcre-devel openssl-devel expat-devel
2、创建用户与解压
useradd -r -s /sbin/nologin apache
tar xf httpd-2.4.34.tar.bz2
tar xf apr-1.6.3.tar.gz
tar xf apr-util-1.6.1.tar.gz
3、移动apr目录
mv apr-1.6.3 httpd-2.4.34/srclib/apr
mv apr-util-1.6.1 httpd-2.4.34/srclib/apr-util
4、源码编译
cd httpd-2.4.34/ ./configure --prefix=/app/httpd24 \
--enable-so \
--enable-ssl \
--enable-cgi \
--enable-rewrite \
--with-zlib \
--with-pcre \
--enable-modules=most \
--enable-mpms-shared=all \
--with-mpm=prefork \
--with-included-apr make && make install
5、设置环境变量
echo 'PATH=/app/httpd24/bin:$PATH' > /etc/profile.d/lamp.sh
6、编辑配置文件
vim /app/httpd24/conf/httpd.conf user apache
group apache 取消下面注释
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so 在下面行添加index.php
IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule> 添加子配置文件
Include conf/extra/php.conf
7、编辑子配置文件
vim /app/httpd24/conf/extra/php.conf 添加以下内容
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/app/httpd24/htdocs/$1
8、启动服务
apachectl
二进制安装MYSQL
1、在前几篇里有提到详细的安装过程,这里就直接干活代码
useradd -r -s /sbin/nologin mysql tar xvf mariadb-10.2.16-linux-x86_64.tar.gz -C /usr/local/ cd /usr/local/ ln -s mariadb-10.2.16-linux-x86_64/ mysql chown -R mysql.mysql mysql/ mkdir /app/mysql chown mysql.mysql /app/mysql cd /usr/local/mysql/ scripts/mysql_install_db --datadir=/app/mysql --user=mysql mkdir /etc/mysql/ cp support-files/my-huge.cnf /etc/mysql/my.cnf vim /etc/mysql/my.cnf datadir=/app/mysql cp support-files/mysql.server /etc/init.d/mysqld chkconfig --add mysqld chkconfig --list service mysqld start vim /etc/profile.d/lamp.sh PATH=/app/httpd24/bin:/usr/local/mysql/bin:$PATH mysql -e "create database wpdb;grant all on wpdb.* to wpuser@'localhost' identified by 'centos'"
备注:这里可以跑下mysql安全脚本,做下安全巩固--请看https://www.cnblogs.com/xsuid/p/9368389.html
PHP编译安装
1、安装包与解压
yum install libxml2-devel bzip2-devel libmcrypt-devel tar xvf php-7.1.18.tar.bz2
2、源码编译
cd php-7.1.18/
./configure --prefix=/app/php \
--enable-mysqlnd \
--with-mysqli=mysqlnd \
--with-openssl \
--with-pdo-mysql=mysqlnd \
--enable-mbstring \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--with-libxml-dir=/usr \
--enable-xml \
--enable-sockets \
--enable-fpm \
--with-config-file-path=/etc \
--with-config-file-scan-dir=/etc/php.d \
--enable-maintainer-zts \
--disable-fileinfo make -j 4 && make install
3、环境变量
vim /etc/profile.d/lamp.sh
PATH=/app/php/bin:/app/httpd24/bin:/usr/local/mysql/bin:$PATH
4、php设置
cp php.ini-production /etc/php.ini
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
PHP配置文件 chmod +x /etc/init.d/php-fpm
chkconfig --add php-fpm
chkconfig php-fpm on
启动程序 cd /app/php/etc
cp php-fpm.conf.default php-fpm.conf
cp php-fpm.d/www.conf.default php-fpm.d/www.conf
php fastcgi配置文件,根据情况来更改
5、启动服务
service php-fpm start
安装wordpress
tar xvf wordpress-4.9.4-zh_CN.tar.gz
cp -a wordpress/* /app/httpd24/htdocs/
cd /app/httpd24/htdocs/ mv wp-config-sample.php wp-config.php vim wp-config.php
根据上面mysql创建信息更改
附加虚拟主机的实现
编辑文件
vim /etc/httpd/conf.d/vhosts.conf
DirectoryIndex index.php
<VirtualHost *:80>
ServerName www.pma.com
DocumentRoot /var/www/html/
ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/var/www/html/pma/$1
<Directory "/var/www/html">
Require all granted
</Directory>
</VirtualHost> <VirtualHost *:80>
ServerName www.wordpress.com
DocumentRoot /var/www/html/
ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/var/www/html/wordpress/$1
<Directory "/var/www/html">
Require all granted
</Directory>
</VirtualHost> <VirtualHost *:80>
ServerName www.forum.com
DocumentRoot /var/www/html/
ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/var/www/html/forum/$1
<Directory "/var/www/html">
Require all granted
</Directory>
</VirtualHost>
结语:后续更精彩
编译-LAMP基于fastcgi的更多相关文章
- 编译安装基于 fastcgi 模式的多虚拟主机的wordpress和discuz的LAMP架构
目录 实现CentOS 7 编译安装基于 fastcgi 模式的多虚拟主机的wordpress和discuz的LAMP架构 准备环境: 准备软件版本: 主机名修改用以区分 数据库服务器 实现数据库二进 ...
- CentOS6编译LAMP基于FPM模式的应用wordpress
CentOS6编译LAMP基于FPM模式的应用wordpress 引言:其实我们可以直接使用yum安装LAMP(Linux+Apache[httpd]+Mysql+PHP),比手动编译安装LAMP要简 ...
- 编译安装基于fastcgi模式的多虚拟主机的wordpress和discuz的LAMP架构
一.环境准备 两台主机: httpd+php(fastcgi模式) mariadb 服务器 软件版本: mariadb-10.2.40-linux-x86_64.tar.gz apr-1.7.0.ta ...
- 生产环境LAMP搭建 - 基于 fastcgi
生产环境LAMP搭建 - 基于 fastcgi 由于在module模式,php只是已http的模块形式存在,无形中加重了http的服务负载,通常在企业架构中,使用fastcgi的模式,将所有的服务都设 ...
- Httpd服务进阶知识-基于FASTCGI实现的LAMP架构
Httpd服务进阶知识-基于FASTCGI实现的LAMP架构 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.httpd+php结合的方式 module: php fastcgi ...
- 编译LAMP部署动态网站环境
LAMP动态网站部署架构是由一套 Linux+Apache+MySQL+PHP 组成的动态网站系统解决方案. 以下配置环境为:Linux=RHEL7 --> Apache=2.4.33 --&g ...
- 源代码编译lamp环境
没有办法用 rpm查询一个源代码包是否安装 因为 并不是用rpm安装的 可以先吧 selinux 给禁用掉 iptables -F 把防火墙规则全部删除 首先确保 gcc gcc-c++ ma ...
- 编译安装基于nginx与lua的高性能web平台-openresty
1.首先编译安装nginx(不多说) 2.开始安装openresty cd /usr/local/src wget https://openresty.org/download/openresty-1 ...
- qemu模拟器下编译运行基于riscv指令集的Linux操作系统
基本原理: 在物理服务器Ubuntu14.04上安装qemu模拟器,模拟器中运行基于riscv指令集编译的linux镜像文件. 用到的工具包括: riscv-qemu(模拟器,可以模拟运行risc ...
随机推荐
- jstack 使用(转)
dump 文件里,值得关注的线程状态有: 死锁,Deadlock(重点关注) 执行中,Runnable 等待资源,Waiting on condition(重点关注) 等待获取监视器,Waiting ...
- 关于spring mvc的配置文件
1. Web.xml <!--配置页面控制器--> <servlet> <servlet-name>spring</servlet-name> < ...
- 基于角色权限管理:rbac设计分析以及具体细节
权限管理---设计分析以及具体细节 说起权限我们大家都知道,不一样的角色会有不一样的权限. 比如就像学生管理系统一样,管理员,老师,学生之间的权限都是不一样的,那么展示的页面也是不一样的. 所以,我们 ...
- C-晾衣服
链接:https://ac.nowcoder.com/acm/contest/892/C 题意: 鸡尾酒从杭州回来,囤积了许多衣服,洗好之后,他发现晾衣服是一件麻烦的事. 晾衣绳的长度只有L,而鸡尾酒 ...
- HDU 1024 A - Max Sum Plus Plus DP + 滚动数组
http://acm.hdu.edu.cn/showproblem.php?pid=1024 刚开始的时候没看懂题目,以为一定要把那n个数字分成m对,然后求m对中和值最大的那对 但是不是,题目说的只是 ...
- Ubuntu下安装Yarm-PM2
首先打开yarm的官网.https://www.yarnpkg.com/zh-Hant/ (一)yarn的官方安装方法: 1.上通过 Debian 套件安裝 Yarn,粘贴以下命令 curl -sS ...
- 《java学习三》jvm性能优化-------调优
常见参数配置 -XX:+PrintGC 每次触发GC的时候打印相关日志 -XX:+UseSerialGC 串行回收 -XX:+PrintGCDetails 更详细的GC日志 -X ...
- Java中常见的坑
概述 Java是门极简风格的语言,比其它语言相比,它故意保持较少的特性,不仅在有些不常见的情况下会出些奇奇怪怪的错误,即使很一般的情况下也有可能让人栽根头.如果你习惯了别的语言,你读Java 的代码很 ...
- ThreadLocal源码解析,内存泄露以及传递性
我想ThreadLocal这东西,大家或多或少都了解过一点,我在接触ThreadLocal的时候,觉得这东西很神奇,在网上看了很多博客,也看了一些书,总觉得有一个坎跨不过去,所以对ThreadLoca ...
- 开发中遇到的Cause: java.sql.SQLException: connection holder is null的异常
异常的出现是属于获取连接超时,从而找不到持有者. 项目中的配置体现: <property name="removeAbandoned" value="true&qu ...