苏州网站建设难-drupal多网站配置

2021-04-22 02:19| 发布者: | 查看: |

--------

苏州网站建设难

-------

用 Drupal 架设多站点同歩(Master/Slave)

* 写的很叼了,但要翻墙,笔记用

本机多站点共享资源数据信息很简易了这样

总体目标:
一个主站点 
多个子站点 、 …
站点间客户同歩,登陆情况(session)同歩……
应用drupal架设,只需要一套drupal编码依据不一样站点的不一样配备文档切分,自然还可以用多套编码。
配备文档:

sites/ –
sites/ slave1. –
sites/ slave2. –

共享资源客户
、的drupal,安裝的情况下设定数据信息表前缀(master_、slave1_和slave2_)
改动sites/ slave1.

$db_prefix = array(
    'default' = 'slave1_',    //  的表前缀为 slave1_
    'authmap' = 'master_',    // 的数据信息, 表前缀为 master_
    'profile_fields' = 'master_',
    'profile_values' = 'master_',
    'role' = 'master_',
    'sequences' = 'master_',
    'sessions' = 'master_',
    'users' = 'master_',
    'users_roles' = 'master_',
);

改动sites/ slave2.

 

$db_prefix = array(
    'default' = 'slave2_',    //  的表前缀为 slave2_
    'authmap' = 'master_',    // 的数据信息, 表前缀为 master_
    'profile_fields' = 'master_',
    'profile_values' = 'master_',
    'role' = 'master_',
    'sequences' = 'master_',
    'sessions' = 'master_',
    'users' = 'master_',
    'users_roles' = 'master_',
);

这样,就完成了客户同歩,如今能够在随意一个站点申请注册新客户,随后到别的站点登陆做为检测。
session同歩
免费下载Shared Sign-On
在各个站点都安裝Shared Sign-On
是主站点,因此设定全部的站点(包含主站点)的Shared Sign-On Master URL 为 
好了,如今能够做到 session 同歩了
也有高級点的多站点编码分开的完成能够参照 node/291373

 

小站原本是用两套drupal运用程序来管理方法两个站点的,数据信息库与drupal程序是1v1的关联。随即发现这样非常容易造成(1)安全性系统漏洞,并且(2)管理方法,维护保养起来十分麻烦。听闻drupal 有一套很好的多站点管理方法体制,因而就google一下。
依据指引,我又再次回到了drupal程序里自带的INSTALL.txt中求出。
我期待做到以下要求:
1 . 用顶极网站域名停靠一个站。即 如今的  .
2 . 别的子站都以文件目录的方式来展现:例如我的汉语站用 : zh 做为通道。
3 . 各个站点都能够独立配备,独立展现,互不矛盾。
4 . 各个子站私有一个数据信息库。
参照了INSTALL.txt 后,我欣喜地发现,里边的方式能够彻底考虑我的需要!太好了!如今汉语翻译出来,给有需要的朋友 ^^

多站配备

掌握了drupal的文件目录配备,大家回到第二点要求上,如何能让站点根据sub 的方法浏览呢? 方式很简易:要是在服务器的drupal根文件目录下创建一个symbol link 便可以了,例如要根据 zh  根文件目录里:

DRUPAL_ROOT
| files
| includes
| misc
| modules
| profiles
| scripts
| sites
| themes
单套drupal安裝程序能够管理方法多个用drupal构建的站。并且每一个站点都能够有自身个性化化的配备。
除主站(第一个创建的drupal站)以外,新添加的子站点文件目录都应当配备在sites 文件目录下(sites是drupal根文件目录下的一个子文件目录,可参照drupal构架科学研究 文件目录机构构造整理)。每个子站文件目录都应当有一个 settings.php 来指明配备信息内容。
最简易的方式是立即copy ./site/default/ 下 的settings.php到子站文件目录中。
新的子站文件目录有站点的url组成。如:针对新增站点:   ,那末其配备文档settings.php 就应当是 sites/example. (留意这里假如大家能够根据 site3 .这些都能够用在独立的drupal站上。那末相应的服务器上的配备应当是像下面这样:

sites/
sites/example.
sites/sub.example.
sites/.
当drupal为站点搜索配备信息内容时,(如  /site3), 就会依照下面的次序来搜索配备,并会先运用第一个找到的配备来设定站点.

sites/ .
sites/.
.
sites/ sub.example.
sites/sub.example.
sites/example.
sites/
假如你配备时沒有用规范的http服务端口号,那末这个端口号将会作为最深层的子网站域名,例如:  的配备将根据载入sites/8080. /文件目录下的配备来运作。假如沒有特定端口号,那末drupal 将忽视带端口号的文件目录,而载入没带端口号的文件目录中的配备文档。就像一个真正子网站域名一样对待。
除安裝在规范文件目录中的控制模块和页面主题外,每个站点都会有它自身的控制模块和页面主题。要用特殊的控制模块和页面主题,能够在你的子站文件目录下创建一个 modules 和 themes 文件目录以下:

+ - (主站根文件目录)
+ -sites
| + -.zh (子站根文件目录)
又例如: 有一个订制的theme 和一个订制的module,而且是只供此子站所用,不与别的站共享资源,那末就应当配备以下:
sites//:
settings.php
themes/custom_theme
modules/custom_module

 

下面再说下,假如你的网站域名或IP带着端口号号,那末drupal浏览起来各种各样对不起,那处理方法也很简易,开启setting.php文档,找到第281行以下

/**
* Base URL (optional).
*
* If Drupal is generating incorrect URLs on your site, which could
* be in HTML headers (links to CSS and JS files) or visible links on pages
* (such as in menus), uncomment the Base URL statement below (remove the
* leading hash sign) and fill in the absolute URL to your Drupal installation.
*
* You might also want to force users to use a given domain.
* See the .htaccess file rmation.
*
* Examples:
* $base_url = /:8888
* $base_url = drupal
* $base_url = drupal
*
* It is not allowed to have a trailing slash; Drupal will add it
* for you.
*/
# $base_url = / NO trailing slash!

改动第281行,OK了。

---------

苏州网站建设难

------------
<
>

 
QQ在线咨询
售前咨询热线
18720358503
售后服务热线
18720358503
返回顶部