今天我们来讲解下 PHPCMS V9的站群功能的 动态站点与静态站点的配置

站群站点,分为动态站点,和静态站点两种设置方法:

静态的,就是将栏目和内容都了HTML 文件,
我们先讲解下,站群的操作:

建好之后,进入你的子站,进行,模型导入,栏目建.设,内容-录入等工作

新建的子站,是木有模型的,我们就将主站的模型导出,再进子站,把模型导入;

记得,栏目和内容都设置成静态

我们添加测试内容,进行下一步骤,更新URL,更新栏目,更新首页,更新全站缓存

接下来,配置关键的;就是你的服务器;如果你是用IIS 的,
就直接新建 网站 的形式来操作,文件夹目录直接指向子站的文件夹名

如果你是APACHE ,那就需要进行配置文件设置了
如下图:

-----------------------------------动态配置-----------------------------------

接下来讲动态配置站群,也就是URL 都是采用屏蔽词汇址的,因为很多时候,我们需要进行功能方面的实验,静态,不方便美工或者程序员对程序的测试!

所以,我们需要用到动态的URL,这个时候,就需要操作 PHPCMS 的路由功能了

找到 根目录下 \caches\configs\route.php

打开之后,我们看下代码:

如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
/**
* 路由配置文件
* 默认配置为default如下:
* 'default'=>array(
*  'm'=>'phpcms', 
*  'c'=>'index', 
*  'a'=>'init', 
*  'data'=>array(
*   'POST'=>array(
*    'catid'=>1
*   ),
*   'GET'=>array(
*    'contentid'=>1
*   )
*  )
* )
* 基中“m”为模型,“c”为控制器,“a”为事件,“data”为其他附加参数。
* data为一个二维数组,可设置POST和GET的默认参数。POST和GET分别对应PHP中的$_POST和$_GET两个超全局变量。在程序中您可以使用$_POST['catid']来得到data下面POST中的数组的值。
* data中的所设置的参数等级比较低。如果外部程序有提交相同的名字的变量,将会覆盖配置文件中所设置的值。如:
* 外部程序POST了一个变量catid=2那么你在程序中使用$_POST取到的值是2,而不是配置文件中所设置的1。
*/
return array(
'default'=>array('m'=>'content''c'=>'index''a'=>'init'),
);

讲解下这个文件哦

注释里,很清楚明白的说明了这个文件的操作方法:

那么,这是一个返回数组的形式的一个文件:

他将什么返回了呢?返回的是站点列表。

每个站点,以
'default'=>array('m'=>'content', 'c'=>'index', 'a'=>'init'),

的形式进行传值

default 就是你的站点URL ,这里是系统默认的,就是default,当然,你也可以将他更改成你的站点域名,比如 www.phpcms.cn

这是一个数组,default 对应的值,又是一个数组,里面的说明,在注释里很详细了,我就不再啰嗦了,关键是站群设置关键的地方,就是data 键

我新建了一个北京站,域名是 beijing.phpcms.cn

那么接下来,我就这样写这个数组;

'beijing.phpcms.cn'=>array('m'=>'content', 'c'=>'index', 'a'=>'init','data'=>array('siteid'=>'2')),

最关键的是后面的siteid 的值是多少,不要传错了,根据你系统的值,你再看看,然后再写;

服务器方面怎么设置呢?APAHCE 直接指向根目录就可以了
IIS方面,我没操作过。就不多加说明了

/***********更新***********/

子站添加内容,URL 会继续沿用 站点1 的URL ,比如
子站的域名是 beijing.phpcms.cn
添加文章之后,URL会变成 www.phpcms.cn/index.php?m=content........
而不是我们需要的 beijing.phpcms.cn/index.php?m=content.............
出现这个情况,怎么解决?

找到 内容管理模块的 classes 下面的 url.class.php

打开之后,找到 89行

原句: $url_arr[0] = $url_arr[1] = APP_PATH.$urls;

改成

1
2
3
4
$this->sitedb = pc_base::load_model('site_model');
$siteid=param::get_cookie('siteid');
$siteinfo=$this->sitedb->get_one(array('siteid'=>$siteid));
$url_arr[0] = $url_arr[1] = $siteinfo['domain'].$urls;

让子站点的栏目URL 也修正过来!

找到 modules/admin/category.php 第418行

原句:$url = APP_PATH.$url;

修改为:

1
2
3
4
$this->sitedb = pc_base::load_model('site_model');
$siteid=param::get_cookie('siteid');
$siteinfo=$this->sitedb->get_one(array('siteid'=>$siteid)); 
$url $siteinfo['domain'].$url;

 

PHPCMS V9多站点[站群功能]动态设置与静态设置子站内容URL的更多相关文章

  1. 利用PHPCMS V9站群功能建立分站

    hosts文件就在C:\Windows\system32\drivers\etc\hosts下 用一套CMS软件系统,做多个网站,统一管理,用户可以互通,这就是所谓的站群功能.这对于运营和维护都能节省 ...

  2. 利用phpcms-v9站群功能建立多个分站

    用一套CMS软件系统,做多个网站,统一管理,用户可以互通,这就是所谓的站群功能.这对于运营和维护都能节省很多时间,否则要同时调试和维护不同系统会非常吃力. 我在用PHPcms v9做了zhencms1 ...

  3. phpcms v9 的表单向导功能的使用方法

    本文主要介绍phpcms v9的表单向导功能是如何使用的,并副多个案例讲解: 先介绍一下v9 的表单向导如何使用 表单向导做的很实用,生成一个表单,常用的是把它作为一个留言板,或者在招聘栏目作为一个供 ...

  4. phpcms v9 的表单向导功能的使用方法 附多个案例

    本文主要介绍phpcms v9的表单向导功能是如何使用的,并副多个案例讲解: 先介绍一下v9 的表单向导如何使用 表单向导做的很实用,生成一个表单,常用的是把它作为一个留言板,或者在招聘栏目作为一个供 ...

  5. phpcms v9全站点击量排行代码

    前台: <ul> {pc:content action="sitehits" siteid="1" num="10" order ...

  6. phpcms v9 列表页直接下载功能代码实现

    {pc:content action="lists" catid="$catid" num="3" order="id DESC& ...

  7. PHPCMS V9 学习总结

    在实现PHPCMS网站过程中,根据业务需求,我们遇到很多问题,特此总结如下,以便大家参考学习. [1]PHPCMS V9系统目录简析 在研究所有问题之前,请先了解一下系统的文件目录结构,具体如下图所示 ...

  8. PHPCMS V9 学习总结(转)

    转自:http://www.cnblogs.com/Braveliu/p/5074930.html 在实现PHPCMS网站过程中,根据业务需求,我们遇到很多问题,特此总结如下,以便大家参考学习. [1 ...

  9. 香港多IP站群服务器-搭建多IP代理服务器、游戏加速服务器

    耀磊花楹qq82521463香港WK自营机房多IP服务器租用,多IP站群服务器,多IP多C段 站群服务器租用 耀磊数据拥有3万个自由香港IP以及独立AS号,是APNIC核心成员,机房通过BGP融合 多 ...

随机推荐

  1. 【Beta】Daily Scrum 第二天

    [目录] 1.任务安排 2.Burndown Chart 3.代码check-in 4.困难及总结 1.任务安排 学号尾数 昨天做的任务 今天做的任务 明天要做的任务 612 添加计时界面返回按键事件 ...

  2. 【Beta】第三次任务发布

    后端(补做) #86 了解社区新建文章.添加评论(回复)的机制.整理成API文档,包括如何请求新建文章.新建评论(回复).如何获取文章内容和评论内容. 验收条件:文档PM要能看懂. 前端(补做) #8 ...

  3. Linux学习一周初体验

    Linux一周初体验一.准备工欲善其事,必先利其器--虚拟机+Redhat7.0构成学习的环境.安装有条不紊.按部就班.......(涉及到的KVM.VNC.Root密码重置等内容,之后再详细了解)注 ...

  4. 总结jQuery选择器

    基本选择器 1. id选择器(指定id元素) 2. class选择器(遍历css类元素) 3. element选择器(遍历html元素) 4. * 选择器(遍历所有元素) 5. 并列选择器$('p,d ...

  5. 从Paxos到ZooKeeper-二、ZooKeeper和Paxos

    ZooKeeper为分布式应用提供了高效且可靠的分布式协调服务,提供了诸如tong'yi统一命名服务.配置管理和分布式锁等分布式的基础服务.在解决分布式数据一致性方面,ZooKeeper并没有直接采用 ...

  6. 图解HTTPS协议加密解密全过程

    我们都知道HTTPS能够加密信息,以免敏感信息被第三方获取.所以很多银行网站或电子邮箱等等安全级别较高的服务都会采用HTTPS协议. HTTPS简介 HTTPS其实是有两部分组成:HTTP + SSL ...

  7. join的理解

    thread.Join把指定的线程加入到当前线程,可以将两个交替执行的线程合并为顺序执行的线程.比如在线程B中调用了线程A的Join()方法,直到线程A执行完毕后,才会继续执行线程B. t.join( ...

  8. python--文件删除、判断目录存在、字符串替换

    昨晚笔试了金山WPS的测试开发卷,做个笔记(但不是答案,只是我的想法),关于文件和字符串的处理正在写入与完善至上一篇的博客中,现在题目如下: 1.使用脚本语言删除E:\abc目录下的所有文件: 利用o ...

  9. try throw catch

    #include "stdafx.h" #include <iostream> #include <stdlib.h> using namespace st ...

  10. C# Get/Post 模拟提交

    public static string GetPage(string url, string encoding) { PublicVariables.NetworkConnection = fals ...