基于三台主机部署phpwind
PHPWind(简称:PW)的使命是让网站更具价值,让更多人从网络中享受便利,以提升生活品质。
phpwind是一个基于PHP和MySQL的开源社区程序,是国内最受欢迎的通用型论坛程序之一。phpwind第一个版本ofstar发布于2004年。截止2013年12月phpwind项目品牌由阿里云计算有限公司拥有,软件全面开源免费。
特点
1. 非凡的访问速度
PHPWind 论坛系统一直坚持高效、安全、稳定、易用的原则,采用独创的模板和数据库体系以及专业的代码设计保证了PHPWind论坛系统的持续高效和稳定,让更多的用户体验互联网的最新理念,也让您的站点在互联网时代脱颖而出。
2. 卓越的负载能力
论坛核心参数的合理配置,专业的web 、数据库、附件和图片链的负载均衡处理,保证了站点在繁忙的服务器环境下快速而稳定的运行,极大地提升站点形象
3. 友好的界面和人性化的功能设计
以功能个性化和人性化为基础,PHPWind论坛系统独创所见即所得发贴编辑器,完善的用户自身信息浏览和管理、对论坛浏览和操作更加方面的快捷链接等。
4. 完美的技术架构和扩展性
标准化的插件接口、可持续开发的完美技术架构,实现了PHPWind论坛系统的可持续扩展性。
注:以上内容来自百度
说明:
三台主机通过fast-cgi部署LAMP,实现phpwind
httpd主机:192.168.29.110
php主机:192.168.29.120
MariaDB主机:192.168.29.130
1 三台主机安装各自需要的软件
(1)httpd主机:安装httpd
[root@CentOS7 ~]# yum install -y httpd
(2)PHP主机:安装php-fpm
组件和php-mysql
组件
[root@CentOS7 ~]# yum install php-fpm php php-mysql php-xml php-mcrypt
(3)MariaDB主机:安装MariaDB提供数据库服务
[root@CentOS7 ~]# yum install mariadb-server
2 配置PHP主机
(1)修改php-fpm配置文件/etc/php-fpm.d/www.conf
12行 listen = 192.169.29.120:9000 #修改服务所监听在本地的那个地址和端口上,如果为空则表示本地所有地址。
24行 listen.allowed_clients = 192.168.29.110 #允许那台主机作为客户端连接到本地的PHP服务器
225行 php_value[session.save_path] = /var/lib/php/session #为PHP的会话session路径,默认次路径不存在,需要创建。
39行 user = apache #默认进程运行用户
41 行 group = apache #默认进程运行组
(2)创建PHP session路径,并设置路径属主属组为apache
[root@CentOS7 ~]# mkdir -pv /var/lib/php/session
[root@CentOS7 ~]# chown apache:apache /var/lib/php/session
(3)启动php-fpm服务
[root@CentOS7 ~]# systemctl start php-fpm
3 配置httpd主机
(1)新建虚拟主机配置文件
[root@CentOS7 ~]# vim /etc/httpd/conf.d/vhost.conf
<VirtualHost *:80>
Directoryindex index.php
DocumentRoot /data/www/html
ServerName www.myphpwind.com
ProxyRequests Off ##关闭正向代理
ProxyPassMatch ^/(.*\.php)$ fcgi://192.168.29.120:9000/data/www/html/$1 ##表示当有后缀为.php的动态资源请求的时候转发到192.168.29.120的主机进行处理。
<Directory /data/www/html >
Options FollowSymLinks ##让连接文件生效
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
(2)确保httpd已经加载了proxy_fcgi_module (shared)
模块
[root@CentOS7 ~]# httpd -M |grep proxy_fcgi_module
proxy_fcgi_module (shared)
4 在httpd配置phpwind
(1)把phpwind压缩包复制到指定的DocumentRoot (/data/www/html)
目录下
[root@CentOS7 ~]# mkdir -pv /data/www/html/
mkdir: created directory ‘/data’
mkdir: created directory ‘/data/www’
mkdir: created directory ‘/data/www/html/’
[root@CentOS7 ~]# cd /data/www/html/
[root@CentOS7 /data/www/html]# rz
[root@CentOS7 /data/www/html]# unzip phpwind_v9.0.2_utf8.zip
(2)把phpwind路径中的upload创建软链接
[root@CentOS7 /data/www/html]# ln -s /data/www/html/phpwind_v9.0.2_utf8/phpwind_v9.0.2_utf8_20170401/upload/ /data/www/html/phpwind
(3)修改属主为apache用户
[root@CentOS7 ~]# chown -R apache:apache /data/www/html/phpwind/*
5 在php主机上配置phpwind
由于phpwind既有动态资源也要静态资源,静态资源通过httpd服务器提供,动态资源通过PHP主机提供,所有两台主机都需要配置phpwind文件。配置方法和httpd上相同
(1)把phpwind压缩包复制到指定的DocumentRoot (/data/www/html)
目录下
[root@CentOS7 ~]# mkdir -pv /data/www/html/
mkdir: created directory ‘/data’
mkdir: created directory ‘/data/www’
mkdir: created directory ‘/data/www/html/’
[root@CentOS7 ~]# cd /data/www/html/
[root@CentOS7 /data/www/html]# rz
[root@CentOS7 /data/www/html]# unzip phpwind_v9.0.2_utf8.zip
(2)把phpwind路径中的upload创建软链接
[root@CentOS7 /data/www/html]# ln -s /data/www/html/phpwind_v9.0.2_utf8/phpwind_v9.0.2_utf8_20170401/upload/ /data/www/html/phpwind
(3)修改属主为apache用户
[root@CentOS7 ~]# chown -R apache:apache /data/www/html/phpwind/*
6 通过浏览器访问192.168.29.110/phpwind
可以看到如下页面
点击“接受”
(1)按照设置向导配置数据库
(2)点击下一步
7 配置MariaDB服务器
(1)关闭数据库的方向解析
[root@CentOS7 ~]# vim /etc/my.cnf.d/server.cnf
[mysqld]
skip_name_resolve=ON
(2)启动数据库,并登陆
[root@CentOS7 ~]# systemctl start mariadb
[root@CentOS7 ~]# mysql
(3)创建数据库 phpwind
MariaDB [(none)]> create database phpwind;
Query OK, 1 row affected (0.00 sec)
(4)创建用户phpwind并授权
MariaDB [(none)]> grant all on phpwind.* to 'phpwind'@'192.168.%.%' identified by '123456';
Query OK, 0 rows affected (0.01 sec)
8 按创建的数据库填写信息
点击“创建数据”
phpwind部署成功
基于三台主机部署phpwind的更多相关文章
- Ubuntu16.04环境下搭建基于三台主机的mysql galera cluster集群(实测有效)
(注意: (1)文中红色字体部分不一定需要操作 (2)由于word文档编辑的原因,实际操作时部分命令需要手动输入!!直接复制粘贴会提示错误!! ) 一 搭建环境: 1 Ubuntu16.04版本(系 ...
- 基于docker 如何部署surging分布式微服务引擎
1.前言 转眼间surging 开源已经有1年了,经过1年的打磨,surging已从最初在window 部署的分布式微服务框架,到现在的可以在docker部署利用rancher 进行服务编排的分布式微 ...
- HAProxy详解(三):基于虚拟主机的HAProxy负载均衡系统配置实例【转】
一.基于虚拟主机的HAProxy负载均衡系统配置实例 1.通过HAProxy的ACL规则配置虚拟主机: 下面将通过HAProxy的ACL功能配置一套基于虚拟主机的负载均衡系统.这里操作系统环境为:Ce ...
- Swarm基于多主机容器网络 - overlay networks 梳理
前面介绍了Docker管理工具-Swarm部署记录,下面重点说下Swarm基于多主机容器通信的覆盖网络 在Docker版本1.12之后swarm模式原生支持覆盖网络(overlay networks) ...
- 记基于docker+gunicorn部署sanic项目遇到的很多很多坑
前言: 最近有个项目需要上线,是python中sanic网络异步框架写的,并且要求使用docker+nginx来部署项目实现负载均衡,于是乎百度了sanic项目部署,基本上都是基于docker+gun ...
- Linux环境基于CentOS7 搭建部署Docker容器
1.Docker容器概述 区分Docker容器技术和VM虚拟机技术: evernotecid://394EFE90-9CE0-4D65-A8CD-DFEC0DC8061E/appyinxiangcom ...
- 基于Ambari Server部署HDP集群实战案例
基于Ambari Server部署HDP集群实战案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.部署Ambari Server端 博主推荐阅读: https://www.c ...
- Ice系列--基于IceGrid的部署方案
前言 前一篇文章介绍了IceGrid的简单应用.这篇文章来介绍一下它的高端玩法-如何将模板,复制组,知名对象应用于部署方案及其作用. 基于模板的部署方案 之前介绍了xml格式的配置文件通过各种描述符如 ...
- 使用nginx实现一个主机部署多域名指向不同docker项目
1,安装 docker yum install docker 使用Docker 中国加速器 vim /etc/docker/daemon.json 添加下面代码 { "registry-m ...
随机推荐
- POJ 1845-Sumdiv 题解(数论,约数和公式,逆元,高中数学)
题目描述 给定A,B,求A^B的所有因数的和,再MOD 9901 输入 一行两个整数 A 和 B. 输出 一行,一个整数 样例输入 2 3 样例输出 15 提示 对于100%的数据满足:0 <= ...
- Kubernets 资源类型简介
# Node 代表 Kubernets 集群运行的宿主物理机或者虚拟服务器, 为容器提供必要的计算资源: 内存 与 CPU 等. # Pod 最底层的抽象. 一个 Pod 中可以包含一个或者多个运行的 ...
- 使用dom4j讲xml字符串递归遍历成Map
package test; import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import j ...
- 关于tween.js 封装的方法
今天做的是匀速情况下div的运动.首先开始之前先了解运动的原理 A------------>>BA移动到B 这段距离是总距离 用一个变量保存下来:var dA移动到B 移动的总次数 用一 ...
- 使用mongodb作为Quartz.Net下的JobStore实现底层的持久化机制
我们都知道默认的Quartz底层采用的是RAMJobStore,所有的Job,Trigger,Calendar都是用Dictionary,SortSet等等这样的数据结构进行储存,相对来说性能肯 定快 ...
- js倒计时函数和(js禁用和恢复a标签的操作)
<script type="text/javascript"> /*获取手机号*/ var start_time=60; function get_phone_nums ...
- django-xadmin中APScheduler的启动初始化
环境: python3.5.x + django1.9.x + xadmin-for-python3 APScheduler做为一个轻量级和使用量很多的后台任务计划(scheduler)包,可以方便 ...
- 【LeetCode】125. Valid Palindrome
题目: Given a string, determine if it is a palindrome, considering only alphanumeric characters and ig ...
- 如何利用keytool查看一个apk的签名
- Less 的使用
Less 的使用 开发时直接使用 引用你的样式文件(main.less) (必须在less.min.js) 前引用 引用less.min.js 文件 <link href="resou ...