Configuring Multi-Target Publish
Multi-Target Publish gives users the option to publish to different servers, expanding
their options past the default production server. Users can extensively test server-side
code, develop new redesigns, or test any major site changes on an alternate server
before publishing to the public-facing web server. Multi-Target Publish is also useful
for providing pages for review to non-OU Campus approvers before they are published
to the production server. The target server can be configured to be only accessible from within the campus network,
from behind a firewall, or for certain IP address.
Level 10 administrators must have already set up publish targets in Setup > Sites for publish targets to be visible for use and selection. If no additional publish targets have been configured, then the drop-down will not be visible on any of the following screens. The public-facing web server (Production) is the default for publishing, but an administrator may also change the default publish target. In this case it is shown at the top of any drop-down used for server selection. Users only see the servers to which they have access.
All server actions are supported by Multi-Target Publish including publish, compare, and preview. A publish target can be viewed, and files accessed through OU Campus similarly to the accessibility for the production server. Upon viewing the folder structure via Content > Pages, the publish target is shown as a tab between Staging and Production. Files and images can be uploaded or imported using Zip Import in the same manner as the production server. Additionally, file operations such as moving, deleting, renaming, and such can be performed on the file on the publish target.
Other notable functionality with Multi-Target Publish is that a sever selection to any available publish target can be made for reusable content such as RSS feeds and LDP assets. Dependency Manager continues to ensure that links are always up to date, even across alternative publish targets and with assets. Additionally, during publish, users may select a checkbox to publish unpublished dependencies. This allows for making sure that any content linked to from Dependency tags within the page will also be published so that the published page will contain the content.
Users with the proper permissions can also upload, and perform various file operations such as comparing and previewing pages in different publish targets. Note that when viewing servers in a drop-down selection list, such as the OmniBrowser, auxiliary sites are also visible; it is recommended to establish a naming convention to help distinguish between types.
All forms of publishing support Multi-Target Publish including compare and preview. A publish target can be viewed, and files accessed and edited through OU Campus similarly to the accessibility the production server. Upon viewing the publish target via Content > Pages, the publish target is show as a tab between Staging and Production. Files and images can be uploaded or imported using Zip Import in the same manner as the production server. Additionally, file operations such as moving, deleting, renaming, and such can be performed on the file on the publish target.
A Level 10 administrator can configure publish targets for each site in the site record.
Level 10 administrators can add additional production servers for Multi-Target Publish via the Setup tab. It is recommended that Dependency Manager be turned on. When using absolute URLs, Dependency Manager must be turned on for the final publish to work with the server. See the Best Practices section on this page for more information.
- Navigate to Setup > Sites.
- Click the Edit icon for the site.
- Scroll down to Publish Targets and click New.
- Configure the settings as follows:
- Site: Enter a user friendly name for the site. This is shown in the drop-down selection lists within the interface when choosing a publish target. For example, Development or Testing.
- Server: Enter the URL of the SFTP/FTP server. For example, s:sftp.myschool.edu. Prepend with “p:” for passive FTP, or “s:” for SFTP.
- Username: Enter the user name for the SFTP/FTP account.
- Password: Enter the password for the SFTP/FTP account.
- FTP Root: Enter the root path for the SFTP/FTP account where files will be placed on the server. For example, /public_html/.
- HTTP Root: The URL equivalent of the website's root. For example, http://www.college.edu/.
- FTP Home: Optional. The highest level files can be written to for the site.
- FTP Path: Optional. This is where users are placed by default when logging into the site if not using the DirectEdit Link.
- Available To: Select a User Group to restrict server rights (i.e., preview and publish) to only members of the chosen group. Defaults to Everyone. None functions similarly to the use of the None group with Access settings; that is, only Level 9 or 10 administrators are able to see and use the publish target. See Groups and Users for additional information.
- Publish Default: Select the Publish Default checkbox to make this publish target the default. The default shows as selected in server choice drop-downs.
- Delete: Click the Delete link to delete the server as a publish target. This removes it as a choice in the drop-downs. The previously uploaded files and directories remain.
Setting the Default Publish Target
The default publish target is generally the production server. The default publish target is what is selected in any drop-down lists that allow for a choice of publish targets. During setup of an additional publish target, or any time thereafter by simply editing the site record, a publish target can be designated as the publish Default. Select the checkbox for Publish Default to make the target the default.
Publish Target Settings Example
In addition to defining site settings, supporting files needed for the site (including
files from the _resources directory such as CSS, server-side scripts, background images,
any other binary files) should be cloned to each server. XSL, TMPLs, and TCFs do not need to be published to each server if they have been configured to reside
on the staging server. This can be accomplished from Setup > Sites > Use Local Template/Local
Template Directory. For more information:
Level 10 administrators can determine access rights to restrict to which servers a user can publish, as well as which ones they can access
for preview and compare.
- Define or edit a User Group from Setup > Groups. Available members can be added to a group and members can be removed from a group to limit access to the publish target.
- When creating or editing the Publish Target, select the desired group for the Available To setting. The default is the Everyone group. None means only administrators can preview/publish.
Only users who are members of that group can publish to that server. Users who are restricted (i.e., not in the group), do not see the additional publish targets in the drop-downs. In thise case, the user belonging to a group that has access to the page is able to publish to other targets to which he or she has access or send it for review. The user will have no indication that the target exists. Revoking users’ rights removes publish access from all servers. Keep that in mind when assigning an approver to a user as it revokes all publishing rights. In this case, if the user belongs to a group that has access to the page, they will be able to see the server and files, but not publish to it.
After the new target is configured, it can be used during the editing and publication process. Level 10 administrators have the capability to publish entire sites and directories. During the publication process, the administrator can select the desired publish target from a drop-down. Page publishing with publish target selection is also available for users with the appropriate permissions. Any form of publishing (for example, scheduled publishing and expire) can utilize the Multi-Target Publish feature.
When performing a site or directory publish, all pages can be published by default or delimited with the following selections:
- Publish Target: If Multi-Target Publish is configured a publish target can be selected from the drop-down.
- Checked-In Files Only: Selecting this option only publishes files that are checked in. Files checked out to the current user are also ignored.
- Use Last Published Version: Selecting this option publishes the last published version of all the files and pages within the directory. Files that have been changed and saved, whether checked out or not, remain saved with changes on the staging server, and only the last published version is published to the target server (the new unpublished content will not be published). Any files and folders within the directory that have never been published before will remain unpublished.
- Changed Files Only: Selecting this option publishes out changed files even if they are checked out to other users or the current user. A changed file that had been checked out by another user is published and remains checked out. A changed file that had been checked out by the current user is published and checked in. When this option is selected newly created pages and files that have not yet been published are published.
When publishing a page, the desired publish target can be selected from a drop-down. The user must be in the publish group and have the appropriate permissions for the publish action. If a user has page publish permissions, but not server permissions, the user will be able to view the pages, but not publish. A target server can also be chosen when scheduling a publish. In addition to a standard page publish, the drop-down menu will show when publishing multiple pages from the folder structure, publishing a directory, or publish a site.
Example of Publishing Multiple Files from the Folder Structure
Example of a Directory Publish with a Publish Target Setting
Example of a Site Publish with a Publish Target Selection
Here are a few noteworthy best practices to keep in mind when using alternative publish targets.
- The default publish target can be configured for the development stage of a new site. When going live to the main production server, the default can be switched back by simply clearing the checkbox in site settings.
- If using a publish target during development, make it the default and set the production server's Available To to None. Use extreme caution when publishing as an administrator.
- Always compare and preview before publishing to a server.
- Use Zip Import to move a large number of files from the development server to the production server.
- Use root relative URLs.
- When defining the name for publish targets, using descriptive names helps the CMS users know which server to select. Auxiliary sites and publish targets are both shown in the drop-down list, and it is sorted alphabetically by default. It may be prudent to develop a naming convention to distinguish among server types.
- Define User Groups to restrict access to specific publish targets and help avoid user confusion and inadvertent publishes to incorrect servers.
- Publish targets should not be used for clustering or load-balancing. If you publish to a production server, and the page gets automatically cloned or copied onto multiple servers for load-balancing for visitor traffic, that practice should continue and not be replaced by Mutli-Target Publish.
- Make sure Dependency Manager is enabled. When using absolute URLs (not root relative), Dependency Manager must be turned on for the final publish to work with the server. If Dependency Manager is not enabled, paths will be hard coded with the chosen server. For example, if during the development stage a "dev.gallena.edu" target is created, paths are hard coded to that development server path: dev.gallena.edu. When switching over publishing to the gallena.edu production server, the hard-coded paths would be incorrect.