五指cms一套代码部署多个网站

简述

最近在做一些企业站,因为有很多个网站,如果没个网站都搭建一套程序,未免有点太过浪费资源,如何用一套后台框架来实现多个网站的部署呢?每个网站都有独立数据库,具体如何实现呢?

蘑菇头喝饮料 GIF 动图_gif_蘑菇头_动图_饮料表情

准备工作

(1)搭建一套无测试数据的五指cms,网站1,域名为:www.xiaozhe.com

(2)第2个网站为:www.zhezhe.com,想用网站1后台的代码;

(3)第3个网站为:www.wangxiaozhe.com,依然用网站1后台框架;

实现过程 

(1)系统配置文件根据域名自适应:

1.1)  在config文件夹下增加网站2与网站3的配置文件(注意:不要忘记更改各个配置文件里的配置项哟);

 1.2) 更改入口文件读取配置文件的地方;

<?php

    //根据域名自适应配置文件:开始
    $domainurl=$_SERVER['SERVER_NAME'];
    $pos=strpos($domainurl,".");
    $domain=substr($domainurl,$pos+1);
    $domain=str_replace(".","_",$domain);

    $domain=preg_replace('|[0-9/]+|','',$domain);
    require './configs/web_config_'.$domain.'.php';
    //根据域名自适应配置文件:结束
?>

 

(2)数据库配置文件根据域名自适应:

2.1) 先把网站1的数据库先复制2份,分别命名为相应的数据库名称,如:xiaozhe_com...(数据库名字可以随便起,因为可以根据域名不同走不同数据库配置);

2.2) 更改config文件下的 mysql_config.php 文件;

2.3) 更改 coreframe\app\core\libs\class\db.class.php 文件,做出如下调整:

<?php
    /**
     * Class constructor
     *
     * @param string $config_file 配置文件
     */
	public function __construct($config_file = 'mysql_config') {
		$this->mysql_config = get_config($config_file);
		
		//根据域名自适应数据库:开始
		$domainurl=$_SERVER['SERVER_NAME'];
		$pos=strpos($domainurl,".");
		$domain=substr($domainurl,$pos+1);
		$domain=preg_replace('|[0-9/]+|','',$domain);
		$this->db_key=$domain;
		$mysql_config=$this->mysql_config;
		$this->mysql_config=array();
		$this->mysql_config[$domain]=$mysql_config[$domain];
		//根据域名自适应数据库:结束
		
		$this->dbname = $this->mysql_config[$this->db_key]['dbname'];
		$this->tablepre = $this->mysql_config[$this->db_key]['tablepre'];
		$this->dbcharset = $this->mysql_config[$this->db_key]['dbcharset'];

		$this->slave_server = isset($this->mysql_config[$this->db_key]['slave_server']) ? $this->mysql_config[$this->db_key]['slave_server'] : '';

		$this->master_db = load_class($this->mysql_config[$this->db_key]['type'],'core',$this->mysql_config[$this->db_key]);
		if($this->slave_server) {
			$slave_server = weight_rand($this->slave_server);
			if($slave_server=='default') {
				$this->read_db = $this->master_db;
			} else {
				$this->read_db = load_class($this->mysql_config[$this->slave_server]['type'],'core',$this->mysql_config[$this->slave_server]);
			}
		} else {
			$this->read_db = $this->master_db;
		}
	}
?>

2.4) 经过以上步骤,数据库这块也就配置好了。 

总结

这,依然是木有总结的一篇博文~

沙雕口红小人尬舞跳舞 GIF 动图_动图_gif_小人尬_沙雕_口红表情

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
五指cms由原phpcms V9 负责人王参加主导开发,前后台界面采用html5+css3技术,可以进行跨屏、跨设备管理内容,极大的提升了用户体验。五指CMS主要包含以下功能点: 一、模型化设计: 1、全站统一模型,方便二次开发; 2、独创共享模型,独立模型,大小数据全部按需存储; 3、支持10多种不同类型的字段添加:如,文本字段,超级字段,地图字段,滑动条字段,组图字段,下载字段,URL加密字段等。 二、数据读写分离: 1、默认支持数据读写分离; 2、支持1台主数据,多台从数据库; 3、支持按照权重分配数据资源。 三、安全性设计: 1、支持缓存文件目录独立设置; 2、支持www目录与核心代码分离部署; 3、支持cookie加密存储; 4、支持后台程序文件与前台文件分离; 5、支持全局Mysql注入过滤; 6、支持上传目录自定义,禁用php执行; 7、后台登录采用session+session验证码,记录所有登录历史; 8、后台管理日志记录; 9、是否允许修改模版需要有服务器文件管理权限; 10、所有菜单都需要进行权限验证; 四、性能设计: 1、缓存支持内存缓存,如:memcache 缓存; 2、不重复生成和检查模版缓存,提升性能; 五、移动优先设计: 1、默认支持移动端访问自适应; 2、无需重复发文章,文章一键推送。 五指cms v1.4 更新日志: 新增内容手动分页 新增百度地图 新增订单管理模块 新增订单地址管理 增加Microsoft YaHei字体 新增推广邀请模块 新增私密下载,下载函数 详细说明:http://php.662p.com/thread-583-1-1.html

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值