PHPCMS V9多站点[站群功能]动态设置与静态设置子站内容URL
今天我们来讲解下 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的更多相关文章
- 利用PHPCMS V9站群功能建立分站
hosts文件就在C:\Windows\system32\drivers\etc\hosts下 用一套CMS软件系统,做多个网站,统一管理,用户可以互通,这就是所谓的站群功能.这对于运营和维护都能节省 ...
- 利用phpcms-v9站群功能建立多个分站
用一套CMS软件系统,做多个网站,统一管理,用户可以互通,这就是所谓的站群功能.这对于运营和维护都能节省很多时间,否则要同时调试和维护不同系统会非常吃力. 我在用PHPcms v9做了zhencms1 ...
- phpcms v9 的表单向导功能的使用方法
本文主要介绍phpcms v9的表单向导功能是如何使用的,并副多个案例讲解: 先介绍一下v9 的表单向导如何使用 表单向导做的很实用,生成一个表单,常用的是把它作为一个留言板,或者在招聘栏目作为一个供 ...
- phpcms v9 的表单向导功能的使用方法 附多个案例
本文主要介绍phpcms v9的表单向导功能是如何使用的,并副多个案例讲解: 先介绍一下v9 的表单向导如何使用 表单向导做的很实用,生成一个表单,常用的是把它作为一个留言板,或者在招聘栏目作为一个供 ...
- phpcms v9全站点击量排行代码
前台: <ul> {pc:content action="sitehits" siteid="1" num="10" order ...
- phpcms v9 列表页直接下载功能代码实现
{pc:content action="lists" catid="$catid" num="3" order="id DESC& ...
- PHPCMS V9 学习总结
在实现PHPCMS网站过程中,根据业务需求,我们遇到很多问题,特此总结如下,以便大家参考学习. [1]PHPCMS V9系统目录简析 在研究所有问题之前,请先了解一下系统的文件目录结构,具体如下图所示 ...
- PHPCMS V9 学习总结(转)
转自:http://www.cnblogs.com/Braveliu/p/5074930.html 在实现PHPCMS网站过程中,根据业务需求,我们遇到很多问题,特此总结如下,以便大家参考学习. [1 ...
- 香港多IP站群服务器-搭建多IP代理服务器、游戏加速服务器
耀磊花楹qq82521463香港WK自营机房多IP服务器租用,多IP站群服务器,多IP多C段 站群服务器租用 耀磊数据拥有3万个自由香港IP以及独立AS号,是APNIC核心成员,机房通过BGP融合 多 ...
随机推荐
- (翻译)如何对python dict 类型按键(keys)或值(values)排序
如何对dict类型按键(keys)排序(Python 2.4 或更高版本): mydict = {'carl':40, 'alan':2, 'bob':1, 'danny':3} for key in ...
- OC面向对象特性: 继承
基础知识 1.标识符是有字母,数字,下划线组成的. 2.首字母只能是字母,下划线,不能为数字. 3.标识符要做到见名之意. 4.标识符不能使用已定义的关键字和预定义标识符. 继承 继承:子类可以直接访 ...
- 中缀表达式转后缀表达式(用于求字符串表达式值)(js栈和队列的实现是通过数组的push和unshift方法插值,pop方法取值)
中缀表达式:就是我通常用的算术或逻辑公式: 后缀表达式:不包含括号,运算符放在两个运算对象后面,所有的计算按运算符出现的顺序,严格从左向右进行,不用考虑运算符优先级: 如,(2+1)*3 转换后,2 ...
- linux中快速清空文件内容的几种方法
这篇文章主要介绍了linux中快速清空文件内容的几种方法,需要的朋友可以参考下 $ : > filename $ > filename $ echo "" > f ...
- JPG / TGA
JPG http://www.openjpeg.org http://libjpeg.sourceforge.net TGA http://tgalib.sourceforge.net
- LaTeX 页眉页脚的设置
Latex中页眉页脚的设置 1. 首先要加页眉页脚的话,需要启动宏: 我通常用fancyhdr宏包来设置页眉和页脚. \usepackage{fancyhdr} 我们在 LaTeX 中先把 page ...
- Django基础,Day10 - template 模板引擎与路径设置
作为一个Web框架,Django需要一个方便的方式来生成动态的HTML.最常见的方法依赖于模板.模板包含所需的HTML输出的静态部分以及一些特殊的语法描述如何插入动态内容. Django框架后端默认支 ...
- PHP代码质量优化
最近总结了一些平常写PHP代码时的一些优化分享给大家. 1.尽量使用绝对路径 相对路径中会检查很多路径,这时我们可以使用绝对路径,但绝对路径不利于后期维护,所以define定义的时候使用__FILE_ ...
- xhprof安装使用
安装: 到pecl官网下载xhprof的最新版:http://pecl.php.net/package/xhprof wget http://pecl.php.net/get/xhprof-0.9.4 ...
- nginx配置文件详解( 看着好长,其实不长,看了就知道了,精心整理,有些配置也是没用到呢 )
user www www; #定义Nginx运行的用户和用户组 worker_processes ; #nginx进程数,建议设置为CPU核数2倍. error_log var/log/ ...