Product support

Get help in the plugin support forum.


Binds domain url to arbitrary theme or page/staticpage

It`s best way for create multiple websites on different multiple domains or subdomains on single installation of OctoberCMS. This is great for theme demos and host multiple of your own websites. One of the obvious uses is the creation of a mobile version of the site.

New in v1.4.5:

  • Added a field indicating the locale position in the domain name, i.e. xx.domain.tld (2-nd position, report from 0), now works in all modes
  • Added option to determine the current locale from the client browser
  • The hard set locale began to work correctly

New in v1.4.1-1.4.2:

  • Added separate folders in MediaManager storage for Backend UserGroups.
  • Added new extended methods work with localization using locale to TLD mapping table in plugin general settings.
  • Added lite bindings interface on default.
  • Other little changes and bug fixes.

Full support Rainlab.Translate plugin. Added Rainlab.Translate support for create multilangual-domains in format (see documentation for presettings):

In v.1.4.2 added supports Locale to TLD mapping table and merge this with available locales (on screenshot or live demo) and this structure domains for support national .tld:

  • domain.com (locale "en" from presettings table for .com)
  • domain.de (auto sets "de" locale for .de, if not finds locale in table)
  • domain.su (locale "ru" from presettings table for .su)


  • Register regular pages or static pages for domain or url (static pages works if Rainlab.Pages plugin install)
  • Register theme for domain or url (does not depend on an active theme)
  • Full support Rainlab.Translate plugin for domain or url (3 mode locale usage: auto XXX.domain.tld, auto domain.XXX, manual select from avaiable locales), support LocalePicker component for change locale
  • Support RainlabUser and BackendUser for set access to page/backend (on user group level)
  • Support separation backends for domains on backend user group level (for full domain https://domain.tld, https://sub.domain.tld without route)
  • Support separation MediaManager content folders for backend user groups (auto generate new folders in media storage from domain bind settings)
  • Prefixing the internal page
  • Suffixing the internal page obtains from the binding path and the current request
  • Presettings multiple internal page parameters
  • Easy redirect with added suffix from Request url
  • Very flexible routing setting
  • Adding replacing all url on page according to your bindings table
  • Filter which domains can use backend

It`s stable and works in production !

For details see the plugin documentation and example settings on my Live demo

Live demo:

Backend (mdomains/admin): https://mdomains.test.linkonoid.com/backend

My others quality plugins:

  • UniDoc(Generate Excel, Word (PhpOffice), Pdf (Snappy || mPDF || TCPD || Dompdf) documents easy on fly and make manipulations with files)
  • Expander (Extend all available models: adding all types custom fields +attributes for model with in database save, and controllers: extends lists and adding custom Behaviors with built-in CMS tools in easy visual mode)
  • Back To Front (Components for creates All Backend Widgets in Frontend pages: Lists, Search, Filter, Forms, FormWidgets, MediaManager, Reports and manage this items)
  • Backend Menu (Complete change and reconfiguration of all menus in backend: adding, rename, move, hide, icons adding and change)
  • Backend Popup (Quick modify records in backend controllers lists in modal popup mode)
  • Datatables (View big data table on page in Ajax-mode)
  • Auto SEO (Full SEO automate. Generate SEO tags based on rules and page content data)
  • Desktop application builder (Free experimental plugin. Easy make Desktop Application on OctoberCMS base)
  • Shortcodes Engine (Free plugin. Core plugin for includes shortcodes in page content, support Static pages)
  • Include Content (Free plugin. Include content on page from other site or file)
  • AdSense (Free plugin. Enables to use AdSense on page)


Demonstration all pages in theme to domain binds and Rainlab.Translate Plugin (LocalePicker component)

Demonstration UserGroups access to page/backend (demo only for backend and user "Mdomains", group "Guests", login/password "mdomains/admin"):

Demonstration separate folders MediaManager for backend-users groups:

Demonstration protected Admin area demo:

Demonstration Rainlab.Pages static pages support:

Demonstration redirect:

Why is this plugin paid?

  • This is not a trivial plugin and it took a lot of time to develop it. The real development cost is much higher
  • You are guaranteed to receive support. Unfortunately, time a developer costs money
  • Need to pay demo servers
  • You help the OctoberCMS project to develop, as 30% of the payment goes to its development
  • I would love to make this plugin public, but even the minimum fee gives an incentive to its further development and support
Backend list all binds domains and urls

If You added NEW domain! You need to understand that in order to use this plugin, you must first register DNS-records A or CNAME and writes virtual hosts on the server (all domains must be registered in the server configuration as virtual hosts with the same parameters as the primary domain).

Default the plugin is installed in the standard mode. In this mode only redefined core Cms Router class and no all plugins support (not work all Router properties in Controller). In v.1.0.5 added Hard mode install with little modify core CMS class (I'm not in favor of changes in the kernel of the system, but without this way full compatibility can not be achieved). Changes neither affect the operation of the system and other plugins.

Now more in detail how to work with extended routers (v.1.1.0)

The current page is defined by 3 links:

  1. Internal page path (Page-url), Page-url: /page/pagename
  2. Binded domain link (Bind-url), Bind-url: http://binddomain.com/par1/par4?par5=1par6=5
  3. Link current request (Request-url), for example: Request-url: http://binddomain.com/par1/par2/par3?par6=7

Works with Rainlab.Translate plugin (LocalePicker component for change locale on page):

  • Install plugin and create language domains with language select for bind
  • add this code in Layout Code-section:
    function onSwitchLocale()
          return Redirect::to($this->page->redirectUrl); 


Number N for suffix search. It determines from which parameter of the request the suffix should be formed.


  • N=1
  • Suffix="/par4/par2/par3" (it's right if difference value DiffValue=2, if DiffValue=1 - result "Page not found", if DiffValue=0 - result "Page not found" )
  • Autochanged Bind-url: http://binddomain.com/par1
  • N=0 - all parameters is suffix, N=empty - no suffixing

Difference value DiffValue

It difference between Request-url path and Bind-url path (in number path parameters: 0, 1 ...).

Remove page path parameters

If this enable then removes all "/:par","/:par*" from dynamic Page-url (excluding clearly established "/:par?arg")

Adding GET-request

GET-request merge from Request-url GET, Bind-url GET (ascending the priority of argument values for parameters).

Example: Page-url=/page/pagename?par5=1&par6=7


Bug fix in updates

Nov 26, 2020


Bug fix in updates

Nov 24, 2020


Little fix for suffix and pathdiff fields on save to DB (bug on Mysql)

Jul 13, 2020


Bug fix in update v1.4.5

Jul 10, 2020


The translation mechanism has been improved, now instead of the suffix and prefix, a specific position in the domain name is indicated (Added locale position in domain name).

Jul 09, 2020


Bug fixes for nullable Suffix on save to DB

Jul 09, 2020


Bug fixes

Feb 25, 2020


Added new extended methods work with localization using table locale-to-domain.TLD in plugin general settings. Added lite bindings interface on default. Other little changes and bug fixes.

Feb 25, 2020


Added separate folders in MediaManager storage for UserGroups.

Feb 25, 2020


Add Rainlab.Translate plugin support. Bug fix "ALL_THEME_PAGES_WITH_ROUTE_PATCH" for Static pages.

Jan 13, 2020


Bug fix with change Theme first user if authorization second user in backend

Dec 09, 2019


Bug fix with set Theme for domain after user authorization in backend (for CMS pages edit)

Dec 09, 2019


Fix bug with user group authentification in Backend

Dec 08, 2019


Bug fix on Migration files.

Oct 07, 2019


Fix error in binding settings for empty Domain Url suffix.

Oct 06, 2019


Added support select active/edit theme in backend for bind to user group. Added default active/edit theme in plugin Settings.

Sep 13, 2019


Added rules for RainlabUser and BackendUser groups to Domain Url bind. Refactoring code for optimized pages speed load. Fixed bugs. Small changes in interface.

Sep 06, 2019


Added Redirect, Presetting params and Prefix for Page Url. Updated replacer Router.php for "hard mode".

Aug 05, 2019


Bug fix routing with not bind url

Aug 02, 2019


Bug fix routing for select page url "ALL_THEME_PAGES_WITH_ROUTE_PATCH"

Apr 30, 2019


Bug fix "Hard mode work"

Apr 30, 2019


Bug fix on Russian translation

Mar 18, 2019


Bug fix on settings tables

Mar 18, 2019


Bug fix on "Protect backend on this domain"

Jan 08, 2019



Jan 08, 2019


Events shema update for not conflict others plugins

Dec 18, 2018


!!!Attention. In version major changes have been made to the logic of the plugin. Added extending routing rules with support path parameters/arguments and get parameters/arguments for page. Added replacing all url on page according to your bindings. Added others little changes.

Dec 12, 2018


Added configuration for plugin to change plugin mode in non-manual. Added 6 languages translates.

Sep 27, 2018


Fixe bug with run if not install StaticPages plugin (bug from v1.0.1). Fix bug with select first theme in admin option select (bug from v1.0.4). Adding Hard mode install with little modify core class "Cms\Classes\Router" in hand mode for FULL support ALL others plugins

Mar 14, 2018


Added default page url "ALL_THEME_PAGES_WITH_ROUTE_PATCH". If this selected, all theme pages binding to new domain one-to-one. Added support path new domain. If set domain path to "http://domain.com/demo", all theme pages, begin on "/demo", path route on new domain url. On create new bind, auto setting on default options current default cms theme and page url "ALL_THEME_PAGES_WITH_ROUTE_PATCH".

Mar 01, 2018


Fixes trubles with protected variables in StaticPages support. Little code refactoring.

Jan 10, 2018


Adds work with Rainlab.Pages. Fixes little trubles with themes in domain settings.

Dec 28, 2017


Initialize plugin

Dec 15, 2017