热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Centos7编译lamp基于fpm模式的应用WordPress,实现多虚拟主机

第一步:安装必要的httpd服务的rpm包yuminstallopenssl-develexpat-develpcre-develdevelopmenttools第二步:源

第一步:安装必要的httpd服务的rpm包

yum install openssl-devel expat-devel pcre-devel development tools

第二步:源码编译httpd包

cp -r apr-1.6.2 httpd-2.4.28/srclib/apr

cp -r apr-util-1.6.0 httpd-2.4.28/srclib/apr-util

cd httpd-2.4.28/

./configure --prefix=/app/httpd24 --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-included-apr --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork

make -j 2 && make install

vim /etc/profile.d/lamp.sh

. /etc/profile.d/lamp.sh

第三步:源码安装mariadb

tar xvf mariadb-10.2.9-linux-x86_64.tar.gz -C /usr/local/

echo '- - - '> /sys/class/scsi_host/host2/scan

pvcreate /dev/sdb

vgcreate vg_mysqldb /dev/sdb

lvcreate -n lv_mysqldb -l +100%FREE vg_mysqldb

mkfs.ext4 /dev/vg_mysqldb/lv_mysqldb

mkfs.ext4 /dev/vg_mysqldb/lv_mysqldb -L data/mysqldb ----挂载卷标

mkdir /data/mysqldb -p ---创建挂载的卷标目录,数据库存放目录

vim /etc/fstab

/dev/vg_mysqldb/lv_mysqldb /data/mysqldb ext4 defaults 0 0

tune2fs -o acl /dev/vg_mysqldb/lv_mysqldb

tune2fs -l /dev/vg_mysqldb/lv_mysqldb

mkdir /etc/mysql/ ---准备配置文件

cp support-files/my-huge.cnf /etc/mysql/my.cnf

vim /etc/mysql/my.cnf

[mysqld]

datadir = /data/mysqldb

innodb_file_per_table = on这个是每张表都单独存放,互相不影响,方便查看,可以不写

skip_name_resolve = on这个是把名字的反向解析关闭,运行速度会快一点,也可以不写。

scripts/mysql_install_db --user=mysql --datadir=/data/mysqldb ---创建本地数据库

cp support-files/mysql.server /etc/init.d/mysqld ---做成服务脚本

chkconfig --list mysqld

chkconfig --add mysqld

chkconfig --list mysqld

service mysqld start

vi /etc/profile.d/mysql.sh ---加上path变量

PATH=/usr/local/mysql/bin:$PATH

mkdir /var/log/mariadb/ ----创建日志文件

chown mysql /var/log/mariadb/

service mysqld start

mysql_secure_installation ---运行安全脚本

create database blogdb; 创建管理数据库1

grant all on blogdb.* to wpuser@'172.17.252.%' identified by 'centos'; ----授权

grant all on blogdb.* to wpuser@'localhost' identified by 'centos';

create database blogdb2; 创建管理数据库2

grant all on blogdb2.* to wpuser2@'localhost' identified by 'centos'; ---授权

第四步:安装php

yum install bzip2-devel libxm12-devel libmcrypt-devel ---准备必要rpm包 ,可以单独装避免出错

tar xvf php-7.1.10.tar.xz

cd php-7.1.10/

./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-mcrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --enable-maintainer-zts --disable-fileinfo

make -j 2 && make install

cp php.ini-production /etc/php.ini ---复制模板文件做成服务脚本

cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

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

service php-fpm start

第五步:准备虚拟主机的配置

/app/httpd24/conf/httpd.conf

AddType application/x-http-php. php添加上

AddType application/x-httpd-php-source .phps 添加上

LoadModule proxy_module modules/mod_proxy.so 注释去掉

LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so注释去掉

DirectoryIndex index.php index.html 测试页面

Include conf/extra/httpd-vhosts.conf 去掉注释虚拟主机

vim /app/httpd24/conf/extra/httpd-vhosts.conf --单独配置多站点虚拟主机

ServerAdmin webmaster@dummy-host.example.com

DocumentRoot "/app/httpd24/htdocs"

ServerName www.a.com

ErrorLog "logs/a.com-error_log"

CustomLog "logs/a.com-access_log" common

ProxyRequests Off

ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/app/httpd24/htdocs/$1

require all granted

ServerAdmin webmaster@dummy-host.example.com

DocumentRoot "/app/httpd24/htdocs2"

ServerName www.b.com

ErrorLog "logs/b.com-error_log"

CustomLog "logs/b.com-access_log" common

ProxyRequests Off

ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/app/httpd24/htdocs2/$1

require all granted

第六步:配置wordpress ,最好都是单独解压复制,到各自的站点,不然数据库只要登陆就会保存数据,如果数据库出问题,直接把数据库删除,然后重建账号数据库

站点一: tar xvf wordpress-4.8.1-zh_CN.tar.gz --解压

mv wordpress/* /app/httpd24/htdocs/ --不建立文件夹,直接复制到根

cp wp-config-sample.php wp-config.php

cd /app/httpd24/htdocs

vim wp-config.php

define('DB_NAME', 'blogdb');

/** MySQL数据库用户名 */

define('DB_USER', 'wpuser');

/** MySQL数据库密码 */

define('DB_PASSWORD', 'centos');

/** MySQL主机 */

define('DB_HOST', 'localhost');

站点二:

tar xvf wordpress-4.8.1-zh_CN.tar.gz --解压

mv wordpress/* /app/httpd24/htdocs2/ --不建立文件夹,直接复制到根

cp wp-config-sample.php wp-config.php

cd /app/httpd24/htdocs2

vim wp-config.php

define('DB_NAME', 'blogdb');

/** MySQL数据库用户名 */

define('DB_USER', 'wpuser');

/** MySQL数据库密码 */

define('DB_PASSWORD', 'centos');

/** MySQL主机 */

define('DB_HOST', 'localhost');


推荐阅读
  • 本文详细介绍了如何在ARM架构的目标设备上部署SSH服务端,包括必要的软件包下载、交叉编译过程以及最终的服务配置与测试。适合嵌入式开发人员和系统集成工程师参考。 ... [详细]
  • 本文详细介绍了在Linux操作系统上安装和部署MySQL数据库的过程,包括必要的环境准备、安装步骤、配置优化及安全设置等内容。 ... [详细]
  • 在 Ubuntu 22.04 LTS 上部署 Jira 敏捷项目管理工具
    Jira 敏捷项目管理工具专为软件开发团队设计,旨在以高效、有序的方式管理项目、问题和任务。该工具提供了灵活且可定制的工作流程,能够根据项目需求进行调整。本文将详细介绍如何在 Ubuntu 22.04 LTS 上安装和配置 Jira。 ... [详细]
  • 在Ubuntu 18.04上使用Nginx搭建RTMP流媒体服务器
    本文详细介绍了如何在Ubuntu 18.04上使用Nginx和nginx-rtmp-module模块搭建RTMP流媒体服务器,包括环境搭建、配置文件修改和推流拉流操作。适用于需要搭建流媒体服务器的技术人员。 ... [详细]
  • 本文详细介绍了在 CentOS 7 系统中安装 Python 3.7 的步骤,包括编译工具的安装、Python 3.7 源码的下载与编译、软链接的创建以及常见错误的处理方法。 ... [详细]
  • 如何在PHP中安装Xdebug扩展
    本文介绍了如何从PECL下载并编译安装Xdebug扩展,以及如何配置PHP和PHPStorm以启用调试功能。 ... [详细]
  • 实践指南:使用Express、Create React App与MongoDB搭建React开发环境
    本文详细介绍了如何利用Express、Create React App和MongoDB构建一个高效的React应用开发环境,旨在为开发者提供一套完整的解决方案,包括环境搭建、数据模拟及前后端交互。 ... [详细]
  • 在Ubuntu 16.10 (x86) 上安装 WordPress 4.7.115
    本文介绍如何在Ubuntu 16.10 (x86) 系统上安装WordPress 4.7.115,包括下载、解压、配置等步骤,确保安装过程顺利进行。 ... [详细]
  • 通过网上的资料我自己的实际内核编译,我把对Linux内核编译的过程写在这里,也许对其他的Linux爱好者的编译学习有些帮助,其中很大部分是 ... [详细]
  • oracle 对硬件环境要求,Oracle 10G数据库软硬件环境的要求 ... [详细]
  • Linux环境下MySQL的安装与配置
    本文详细介绍了在Linux系统上安装和配置MySQL的步骤,包括安装前的准备工作、下载和解压安装包、初始化数据库、配置文件编辑、启动服务以及设置开机自启动等。 ... [详细]
  • 本文详细介绍了在 Ubuntu 16.04 系统上安装和配置 PostgreSQL 数据库的方法,包括如何设置监听地址、启用密码加密、更改默认用户密码以及调整客户端访问控制。 ... [详细]
  • 精选10款Python框架助力并行与分布式机器学习
    随着神经网络模型的不断深化和复杂化,训练这些模型变得愈发具有挑战性,不仅需要处理大量的权重,还必须克服内存限制等问题。本文将介绍10款优秀的Python框架,帮助开发者高效地实现分布式和并行化的深度学习模型训练。 ... [详细]
  • Jupyter Notebook多语言环境搭建指南
    本文详细介绍了如何在Linux环境下为Jupyter Notebook配置Python、Python3、R及Go四种编程语言的环境,包括必要的软件安装和配置步骤。 ... [详细]
  • 本文详细介绍了如何在Windows操作系统中配置和使用Lex(Flex)与Yacc(Bison),包括软件的下载、安装以及通过示例验证其正确性的步骤。 ... [详细]
author-avatar
000000
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有