YES Linux Website Administration Guide

Arthur Copeland

This document is Licensed under the GPL

Revision History
Revision $Revision: 1.5 $$Date: 2005/03/18 05:41:31 $$Author: boo $

1. Overview
2. Requirements
3. Design
3.1. Naming Convention
3.2. Build File
3.3. Apache Template Fragment
4. Manual Configuration
5. Web Administration Configuration
6. WebDav Access
7. Conclusion

1. Overview

This document is a Guide on how to Administer Website using YES Linux. In the guide you will be walked through the process of configuring websites both manually and through the web based administration application, and the location to upload files to your websites using WebDav. The audience of this guide is any current User of YES Linux.

If help is ever needed please visit http://youresale.com/support/. You will find both commerical and free online support https://www.yeslinux.org/forum. The commercial support is provided by YEA (YourESale Authorized Administrators).

2. Requirements

YES Linux requirements:

  • A fully Installed and Configured instance of YES Linux

3. Design

The Website Administration Design uses the internal Ant Based YES Linux Configuration system to manipulate configure websites, a Template Apache Fragment, and a Naming Convention. To change the behavior it is recommend you either Modify the XML Build file or the Apache template fragment.

Using the configuration system you can do one of the following tasks Create a new Virtual Host, Enable an Existing Virtual Host, or Disable an Existing Virtual Host. To remove or delete a Virtual Host you will have to have either a shell account or console access then manually remove all the fragments.

3.1. Naming Convention

The naming convention for all the files are <domainname>commonname. The list of files that create created during a creation are as follows:

  • Apache Fragment - <domainname>-vhost.yes (Enabled) or <domainname>-vhost.no (Disabled)

  • Top Level Directory for the Domain - /yesdata/www/<domainname>/

  • Sub Directories

    • docs - HTML Document Root

    • cgi-bin - CGI Bin directory

    • ssl.crt - SSL Certificate

    • ssl.key - SSL Private Key

  • Apache Log Files - /var/log/httpd/

    • <domainname>-access_log

    • <domainname>-error_log

    • <domainname>-ssl_access_log

    • <domainname>-ssl_error_log

3.2. Build File

The build file that drives the whole process is called /etc/yes/yes-website.xml. If you wish to modify the process of creating, disabling, or enabling of Virtual Hosts this is the file to manipulate.

3.3. Apache Template Fragment

The template fragement that drives the whole process is called /yesdata/www/templates/virtualhosting-template-fragment.yes. It contains the default version of the apache fragment that will dirve the virtual domain. If you want to change anything in the final Apache Fragment you should modify this template. Not that you SHOULD NOT modify the phrase "VIRTUALDOMAINNAME", because it is a token that is replaced by the domain name during creation and is used by the Build File.

4. Manual Configuration

To manually configure a new Website you will need to have root access

In each of the commands below REPLACE <new domain name> with the name of the Domain you wish to manipulate.

  1. Create a VirtualDomain - /usr/sbin/yesconfig -DdomainName=<new domain name> -t createVirtualHost -c /etc/yes/yes-website.xml

  2. Enable a VirtualDomain - /usr/sbin/yesconfig -DdomainName=<new domain name> -t enableVirtualHost -c /etc/yes/yes-website.xml

  3. Disable a VirtualDomain - /usr/sbin/yesconfig -DdomainName=<new domain name> -t disableVirtualHost -c /etc/yes/yes-website.xml

5. Web Administration Configuration

THE ADMINISTRATION SCREEN WILL NOT AUTOMATICALLY REFRESH WHEN A VITRUAL DOMAIN IS SUCCESSFULLY CREATED, DISABLED, OR ENABLED. YOU WILL MANUALLY HAVE TO CLICK ON THE VIRTUAL HOST Link.

Using the Web Based administration tool you will not have the ability to manipulate the Default "Prmary" Website that is only accessible manually. The administration tool is available either throufh the Administration Interface /yesadmin/ => Website Administration or directly /webadmin/. Once you are in the Website Administration Interface you will need to click on the Virtual Host Link. In this interface you have the ability to Create, Disable, or Enable Virtual Hosts. During the loading on the page if there is any existing Virtual Hosts the will be displayed for you the the enabled hosts first, then all the disabled domains following.

To create a new Virtual Host just enter the domain name in the supplied text box then click on the create button. Once the pages stops processing you will have you new virutal host instance. As stated above the site WILL NOT refresh the page, but the domain will be created. The reason for this is that during the manipulation process of the webserver is reloaded so the change is instant, thus we loose our context. Since php doesn't have native threads it is not possible to easily preform the updating asynchronously.

To enable or disable a Virtual Host just find the domain you wish to modify and click on the link next to the name. Again as stated above the site WILL NOT refresh the page, but the domain will be created. The reason for this is that during the manipulation process of the webserver is reloaded so the change is instant, thus we loose our context. Since php doesn't have native threads it is not possible to easily preform the updating asynchronously.

6. WebDav Access

All Virtual Hosts are created with WebDav access using both HTTP and HTTPS with the following naming convention: /yes<domainname>. For example if you create domain called testme.com, you will have a WebDav location of http://testme.com/yestestme.com or https://testme.com/yestestme.com

The default access is limited to the admin group (which by default only contains the user created during the install) and you internal network. To change any of these restrictions modify the configuration fragment located in /yesdata/www/conf.d/<domainname>-vhost.yes or /yesdata/www/conf.d/<domainname>-vhost.no depending on if it is enabled or disabled. Once you have made the changes you will need to reload apache, "/etc/init.d/httpd reload".

7. Conclusion

For more information on YES Linux Website Administration look here https://www.yeslinux.org/forum/viewforum.php?f=33.