1. Introduction The Domain Access module is a Node Access module. It is designed to partition access to content over a series of one or more subdomains. The network established by Domain access functions with a single, central Drupal install with a single settings.php file. The distribution of content across the subdomains is accomplished through the adjustment of access permissions. There are several ways to adjust your permissions both within DA and by enabling the modules packaged with it or by adding additional, contributed modules. [To get a better idea of these possibilities, please check the accompanying Readme.txt file as well as install.txt files included in the other modules in this package or elsewhere.] WARNINGS: 1) Failure to install or uninstall this module according to instructions may cause errors in your site. 2) Once DA is installed, the top administrator, who is by definition above permissions, will see all content assigned to any given page at all times. You must set some basic permissions and then log in as a simple anonymous or authenticated user (depending on how you have set up your permissions) to see Domain Access at work. This is not a system failure. Domain Access was intentionally built to function in this fashion. ---- 2. Installation This module requires some advanced understanding of Drupal and of how DNS servers behave. If you simply untar the download and activate the module, it may not work correctly. For more background on DNS and virtual host configurationa, please try the following documentation: For a general overview: - http://en.wikipedia.org/wiki/Virtual_hosting In-depth documentation with many examples for specific situations: - http://httpd.apache.org/docs/2.0/vhosts/ - http://httpd.apache.org/docs/2.0/vhosts/examples.html When you enable the module, it will create a {domain} table in your Drupal database as well as open a < Domains > section under Site Building in the Administer section of the Drupal back-office. All existing nodes [content] on your site will be assigned to the default domain for your web site as well as to all affiliates. In order to change this behavior, see sections 2.4 through 2.6 of README.txt ---- 2.1 Before Installing You will need to do the following before you install the module. - Read this document - Configure your web server DNS records appropriately - Read the supplied README.txt - Install and configure Drupal normally. IMPORTANT WARNING: The Domain Access module series instructs you to add some code, actually a file include call, to your settings.php file. DO NOT add this command UNTIL AFTER you have installed your primary Drupal site. ---- 2.2 Server Configuration For the module to work correctly, the DNS record of your server must accept multiple DNS entries [most servers do]. Your new virtual host(s) must then be correctly configured for your server. In general, this involves small additions to the hosts file and the httpd.conf file. In order for the Apache server to find your virtual host(s), it absolutely needs two pieces of information: the ServerName (hostname & port the server uses to identify itself) and and an IP address. The two basic methods for doing this are either to: - Setup WildCard DNS, so that *.example.com (= all names carrying the < example.com > suffix) resolves to your Drupal site. - Setup each VirtualHost specifically, so that one.example.com, two.example.com, etc. all resolve to your Drupal site. For example, on my local testing machine, I have configured the following VirtualHosts in my hosts file: - ken.test => 127.0.0.1 - one.ken.test => 127.0.0.1 - two.ken.test => 127.0.0.1 - three.ken.test => 127.0.0.1 with their port and document root defined in the httpd.conf file: [attempt at generic setting. I am unsure as to what port would be used with XAMPP] DocumentRoot /XAMPP/htdocs/ken.test ServerName ken.test DocumentRoot /XAMPP/htdocs/ken.test ServerName one.ken.test NOTE: when configuring DNS for Domain Access, the document root is the same for all the VirtualHost so that the sudomains will resolve to the Drupal core installation. This example gives a general idea of what is involved, but It is beyond the scope of this document to explain how to configure your specific DNS server situation, which may involve considerable trial and error or a call for help. Shared server situations can be particularly complicated and you should contact their administration for help with configuration. For more information, see: - http://en.wikipedia.org/wiki/Wildcard_DNS_record - http://en.wikipedia.org/wiki/Virtual_hosting - http://httpd.apache.org/docs/2.0/vhosts/ After you have enabled multiple DNS entries to resolve to your single, default Drupal installation, you may activate the module and configure its settings at /Admin/build/Domains in the back-office. NOTE: No matter how many domains resolve to the same IP adress, you only need one instance of Drupal's core and settings.php file as well as single installs of your chosen modules. Your Drupal site's folder should be in the root directory and should carry your primary domain name. The site name defined in the DA settings will override any previous definition in the Drupal back-office (@ /admin/settings/site-information) across all sites within your DA series [the same for: mission statement, slogan, footer, etc.]. To set different Site Information for each subdomain, the Domain_conf module should be enabled and configured [See Domain_Conf Readme.txt ].