Difference between revisions of "AWBS Installation Guide"

From AWBS Wiki
Jump to: navigation, search
(Cron Job Info)
 
(76 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 
== System Requirements ==
 
== System Requirements ==
 
+
[[System_Requirements| View AWBS System Requirements]]
    * Linux/FreeBSD/Windows2003
+
    * PHP v4.3.8-5.0.x and 5.1.x (safe_mode off)
+
    * MySQL Database Server v4.x-5.x (strict mode off)
+
    * Apache or IIS5/6 Web Server
+
    * Curl + SSL v7.10 or better (php compiled Curl required)
+
    * Ability to setup CRON jobs or scheduled tasks
+
    * Ability to setup password protected directories. (.htaccess)
+
    * Secure site (optional)(no cross domain secure URLs)
+
    * Compiled GD with freetype support needed for human verification system and reports.
+
 
+
NOTES:
+
 
+
Ioncube encoded version Only, Zend Version has been discontinued.
+
 
+
Ioncube is not compatible with MMCache or other 'untrusted' extentions.
+
 
+
Viewing your phpinfo() output, you will be able to see most of the system requirements. Contact your server admin if you are not sure or run the pretest.php script (located in the tools directory) to see if your server passes the basic requirements tests.
+
 
+
Other settings (php.ini settings)
+
 
+
safe_mode Off
+
allow_url_fopen On
+
max_execution_time 120 or higher
+
session.auto_start Off
+
magic_quotes_gpc On
+
memory_limit 64M or higher
+
register_long_arrays On
+
magic_quotes_runtime Off
+
output_handler ''no value''
+
short_open_tag On
+
 
+
Please note: Some of the above settings pertain to only certain versions of php. Check to see if you have these settings in your php.ini. Consult with your server admin if you are not sure.
+
 
+
  
 
== Install Checklist ==
 
== Install Checklist ==
  
1. Create a new MySQL database with new user that has full rights to it.
+
# Create a new MySQL database with new user that has full rights to it.
 +
# Upload AWBS files and license file.
 +
# Edit dbconfig.php file.
 +
# Run install script.
 +
# Delete install directory.
 +
# Secure admin, includes, and tools directories.
 +
# Configure scheduled 'cron jobs'.
 +
# Configure.
 +
# Customize as desired.
 +
# Test.
 +
# Go Live!
  
2. Upload AWBS files and license file.
+
== Portal Mode option ==
 +
Note: Portal Mode option is available in AWBS 2.8.0 and newer versions
  
3. Edit dbconfig.php file.
+
Portal mode is designed for those who do not wish to use AWBS as their website.<br />
 +
Portal mode can be enabled during the installation process or turned on after installation in the System Options, Look and Feel section.<br />
 +
Select True for the Portal Mode setting.<br />Portal mode automatically uses index5.php template (Homepage 5).<br />
  
4. Run install script.
+
If you enable Portal Mode, you must configure a Hosting Home URL in the Website/Company Info page of the configuration as well.<br />
 
+
Set the Hosting Home URL to your main website's URL.
5. Delete install directory.
+
 
+
6. Secure admin, includes, and tools directories.
+
 
+
7. Configure scheduled 'cron jobs'.
+
 
+
8. Configure.
+
 
+
9. Customize as desired.
+
 
+
10. Test.
+
 
+
11. Go Live!
+
  
 +
It is recommended AWBS be installed to a directory under your web directory if using Portal Mode, however it is not required.
  
 
== Installation ==
 
== Installation ==
Line 64: Line 32:
 
===Create Database===
 
===Create Database===
  
Create a new MySQL database and new user with full rights to the database. Check with your server's control panel documentation for details on how to create databases on your system.
+
Create a new MySQL database and a new user that has full rights to the database. Check with your server's control panel documentation for details on how to create databases on your system.
  
 
===Upload files===
 
===Upload files===
  
 
Unzip the AWBS full install zip file with paths in your computer. Upload all files maintaining the directory structure. Upload in binary mode.
 
Unzip the AWBS full install zip file with paths in your computer. Upload all files maintaining the directory structure. Upload in binary mode.
 
 
Note: Many ftp clients have problems corrupting encoded files. We recommend Total Commander as a tool for uploading files as well as many other functions.
 
Note: Many ftp clients have problems corrupting encoded files. We recommend Total Commander as a tool for uploading files as well as many other functions.
  
Line 75: Line 42:
  
 
Upload the AWBS full install zip file and unzip on your server. If you do this, be sure your files are owned by the user who owns the site.
 
Upload the AWBS full install zip file and unzip on your server. If you do this, be sure your files are owned by the user who owns the site.
 +
 +
'''AND'''
 +
 +
Upload the license.dat file to the web directory where you will run AWBS. For example, if your site's web directory is /home/youruser/public_html, then upload the license.dat file to the /home/youruser/public_html directory.
 +
 +
Instructions on where to get your license.dat file come via email when your order is filled. If you ordered your AWBS license from awbs.com, please check the email you got when the order was filled. If you ordered your AWBS license from one of our resellers, they should have provided the file to you either by way of download or they may have emailed it to you direct. Please check with your reseller if you did not receive the license.dat file.
  
 
===Edit dbconfig.php file===
 
===Edit dbconfig.php file===
Line 82: Line 55:
 
Remove the following line:
 
Remove the following line:
  
$needs_edit=1;
+
$needs_edit=1;
  
 
Edit these lines with your database information:
 
Edit these lines with your database information:
  
$dbhost (change only if your server won't connect to MySQL via 'localhost' or if your db is located on another server)
+
$dbhost (change only if your server won't connect to MySQL via 'localhost' or if your db is located on another server)
 
+
$dbusername
$dbusername
+
$dbpassword
 
+
$dbdatabase
$dbpassword
+
 
+
$dbdatabase
+
  
 
(Enter your information between the quotes in each line, overwriting the sample data that is there)
 
(Enter your information between the quotes in each line, overwriting the sample data that is there)
  
Edit this line with your correct path to your files:
+
Edit this line with your correct physical path to your files:
  
$workdir
+
$workdir
  
Example: /home/userdir/public_html
+
Linux example: /home/userdir/public_html<br />
 +
Windows example: c:\sites\sitename\webroot
  
 
Contact your server admin or control panel documentation if you do not know your path to your web directory. Each system uses it's own path structure and many servers are unique as per how they were installed.
 
Contact your server admin or control panel documentation if you do not know your path to your web directory. Each system uses it's own path structure and many servers are unique as per how they were installed.
Line 106: Line 77:
 
Edit this line with your domain name preceded by a dot:
 
Edit this line with your domain name preceded by a dot:
  
$cookie_domain
+
$cookie_domain
  
 
Save your changes and upload if editing remotely.
 
Save your changes and upload if editing remotely.
Line 118: Line 89:
 
Once you have read the license agreement, Check the box and click "Begin Install"
 
Once you have read the license agreement, Check the box and click "Begin Install"
  
+
'''Welcome: (License Check)'''
 
+
Welcome: (License Check)
+
  
 
The next step is to verify your license. You should see something like the following:
 
The next step is to verify your license. You should see something like the following:
  
License Status: Active
+
License Status: Active
 
+
<br>
Your licensing has been verified and your system is now activated.
+
Your licensing has been verified and your system is now activated.
  
 
Once the license has been verified click the box at the bottom of the page labeled "Continue With Install"
 
Once the license has been verified click the box at the bottom of the page labeled "Continue With Install"
Line 134: Line 103:
 
Error 3 indicates your server cannot reach our license database via port 80. Ensure your server has internet access via port 80.
 
Error 3 indicates your server cannot reach our license database via port 80. Ensure your server has internet access via port 80.
  
+
'''Step 1:'''
 
+
Step 1:
+
  
 
The next step is to check your php.ini configuration settings and make sure everything is ready to go.
 
The next step is to check your php.ini configuration settings and make sure everything is ready to go.
Line 142: Line 109:
 
You should see something like the following:
 
You should see something like the following:
  
Safe Mode:  OK
+
Safe Mode:  OK
 +
Register Globals:  OK
 +
Session Cookies:  OK
 +
Compiled Curl:  OK
 +
<br>
 +
Environment Tests appear OK. Let's continue.....
  
Register Globals:  OK
+
Once the above information has been tested, click the box at the bottom of the page labeled "Continue to step 2"
  
Session Cookies: OK
+
'''Step 2:'''
  
Compiled Curl:  OK
+
The next step is to check your database settings and make sure everything is ready to go.
  
Environment Tests appear OK. Let's continue.....
+
You should see something like the following:
  
Once the above information has been tested, click the box at the bottom of the page labeled "Continue to step 2"
+
DB User/Pass:  yourdbusername/yourdbpassword
 +
Database Name:  yourdbname
 +
DB User/Pass:  OK
 +
DB Connect Test:  OK
 +
Database Exists:  OK
 +
<br>
 +
Database Tests appear OK. Let's continue.....
  
+
Once the above information has been tested, click the box at the bottom of the page labeled "Continue to step 3"
  
Step 2:
+
'''Step 3:'''
  
The next step is to check your database settings and make sure everything is ready to go.
+
The next step is to check your database structure and make sure the database is ready to go.
  
 
You should see something like the following:
 
You should see something like the following:
  
DB User/Pass: yourdbusername/yourdbpassword
+
  Database Structure Creation appears OK. Let's continue....
  
Database Name:  yourdbname
+
Once the above information has been tested, click the box at the bottom of the page labeled "Continue to step 4"
  
DB User/Pass: OK
+
'''Step 4:'''
  
DB Connect Test:  OK
+
The next step is to populate the database with your company's information. Fill in the following info and then continue.
  
Database Exists: OK
+
You will need to fill out the information like shown below:
  
Database Tests appear OK. Let's continue.....
+
Company Information
 +
Company Name: 
 +
Company Address1: 
 +
Company Address2: 
 +
Company City: 
 +
Company State: 
 +
Company Zip: 
 +
Company Country: 
 +
Company Phone: 
 +
Company Fax: 
 +
Admin Email: 
 +
Support Email: 
 +
Sales Email:
 +
Billing Email:
  
Once the above information has been tested, click the box at the bottom of the page labeled "Continue to step 3"
+
'''Server Settings'''
  
+
Edit the licensed urls if necessary. '''Add/Remove the www. as needed/desired, edit http and https as needed, and add any subdirectory information to the url.''' Do NOT add a trailing slash. If you do not wish to use https, make the bottom url the same as the top.
  
Step 3:
+
If you alter the domain name or subdomain, it will not match your license and you will have license errors.
  
The next step is to check your database structure and make sure the database is ready to go.
+
Non-Secure URL:  examples: http://[your_licensed_domain_name]/directory  or http://[your_licensed_domain_name]  or http://[your_licensed_subdomain]
  
You should see something like the following:
+
Note: The URL above should reflect the url you surf to to get to your awbs site.
  
Database Structure Creation appears OK. Let's continue....
+
'''Server Admin'''
  
Once the above information has been tested, click the box at the bottom of the page labeled "Continue to step 4"
+
This is where you will establish the 'super admin' account and login. The password can be changed later.
  
+
'''Remember this login!'''
  
Step 4:
+
Admin First Name:
 +
Admin Last Name: 
 +
Admin Username: 
 +
Admin Password: 
  
The next step is to populate the database with your company's information. Fill in the following info and then continue.
+
Once you have the above information filled out as needed, click the box at the bottom of the page labeled "Continue to step 5"
  
You will need to fill out the information like shown below:
+
'''Step 5:'''
  
Company Information
+
'''AWBS installation is complete!'''
  
Company Name: 
+
At this point, the basic install is complete.
  
Company Address1: 
+
Click the box labeled "Finish Install"
  
Company Address2: 
+
===Delete the install directory===
  
Company City: 
+
Remove or rename and relocate the install directory. This is a security measure, you don't want anyone surfing to it.
  
Company State: 
+
===Secure the admin, includes and tools directories===
  
Company Zip:
+
Most hosting control panel systems provide a link to setup directory password protection. Most use .htaccess files. Consult with your hosting control panel documentation for details on how to secure directories. If you do not have a Hosting Control panel, please see the following article on .htaccess protecting your folders manually: [[Setup_htaccess|Setting Up .htaccess Protection]]
  
Company Country: 
+
===Configure your cron jobs===
  
Company Phone: 
+
You will need to schedule 4 files to run.
  
Company Fax:  
+
  master_cron.php every 15 or 10 minutes
 +
invoice_cron.php once per day
 +
updateexp.php once per day
 +
updtransfers.php once per day
  
Admin Email: 
+
The files are located in the tools directory.
  
Support Email:
+
In most cases your command will look like this:
  
Sales Email:
+
<nowiki>*/15 * * * * php -f /your/path/to/awbs/tools/master_cron.php</nowiki>
  
Billing Email:
+
(Substitute your correct path in the above example.)
  
 
+
This would run the master_cron.php file every 15 minutes.
  
Server Settings
+
Another example:
  
Edit the licensed urls if necessary. '''Add/Remove the www. as needed/desired, edit http and https as needed, and add any subdirectory information to the url.''' Do NOT add a trailing slash. If you do not wish to use https, make the bottom url the same as the top.
+
<nowiki>10 5 * * * php -f /your/path/to/awbs/tools/invoice_cron.php</nowiki>
  
If you alter the domain name or subdomain, it will not match your license and you will have license errors.
+
This would run invoice_cron.php file each day at 5:10am.
  
+
If you get no errors in the crontab or the scheduling program you are using, your crons are configured correctly. (make sure it is configured to send email or check the logs as per your system.)
  
Non-Secure URL:  examples: http://[your_licensed_domain_name]/directory  or http://[your_licensed_domain_name]  or http://[your_licensed_subdomain]
+
Your install is complete, now you need to login as super admin and configure AWBS as per your company needs, customize as desired and test.
  
Note: The URL above should reflect the url you surf to to get to your awbs site.
+
== Easy cPanel Install ==
 +
Refer to the [[Easy_cPanel_Install|Easy cPanel Install Doc]] for details.
  
+
== Easy Plesk Install ==
 +
Refer to the [[Easy_Plesk_Install|Easy Plesk Install Doc]] for details.
  
Server Admin
+
== Easy DirectAdmin Install ==
 +
Coming Soon
  
This is where you will establish the 'super admin' account and login. The password can be changed later.
+
==Cron Job Info==
  
'''Remember this login!'''
+
There are 4 scripts that need to be scheduled. We refer to them as 'cron jobs'. Schedule them using whatever scheduling tool is available to you on your server. Linux/FreeBSD servers have crontab, which can be used to schedule them. Windows servers may have a task scheduler or you may need to install a 3rd party scheduling software.
  
Admin First Name:  
+
'''master_cron.php''' - schedule every 10 or 15 minutes as desired.
  
Admin Last Name: 
+
The master_cron.php will run all jobs in the open job queue.
  
Admin Username:  
+
'''invoice_cron.php''' -  schedule only once every 24 hours at a low traffic time on your server.
  
Admin Password: 
+
The invoice_cron.php is responsible for generating invoices, sending out invoice notice emails, late notices, etc. to customers. It also charges the credit cards for recurring invoicing, if your processor is supported.
  
Once you have the above information filled out as needed, click the box at the bottom of the page labeled "Continue to step 5"
+
'''updateexp.php'''  -  schedule once every 24 hours at a low traffic time
  
+
The updateexp.php cron checks for domains expiring in 60, 30, 7 and 0 days and sends out expire notices to customers. If customers have auto renew checked on their domain and have credit in their account or a credit card on file, updateexp.php will send them a notice at 35 days prior to expire notifying them their domain will be auto renewed in 5 days.
  
Step 5:
+
'''updtransfers.php'''  - schedule once every 24 hours at a low traffic time
  
AWBS installation is complete!
+
The updtransfers.php will check for completed transfers at the registrar and update the status in the AWBS database.
  
+
===Example crontab command AWBS version 2.4.0 and newer:===
  
At this point, the basic install is complete.
+
cPanel example:
  
Click the box labeled "Finish Install"
+
php -f /home/userdir/public_html/tools/master_cron.php
  
===Delete the install directory===
+
(replace 'userdir' with your cpanel username)
  
Remove or rename and relocate the install directory. This is a security measure, you don't want anyone surfing to it.
+
Use the same format for any server using crontab for scheduling, example:
  
===Secure the admin, includes and tools directories===
+
php -f /path/to/AWBS/files/tools/cron_filename
  
Most hosting control panel systems provide a link to setup directory password protection. Most use .htaccess files. Consult with your hosting control panel documentation for details on how to secure directories.
+
===Example crontab command prior versions:===
  
===Configure your cron jobs===
+
cPanel example:
  
You will need to schedule 4 files to run.
+
php -f /home/userdir/public_html/tools/master_cron.php
  
master_cron.php every 15 or 10 minutes
+
(replace 'userdir' with your cPanel username)
  
invoice_cron.php once per day
+
Use the same format for any server using crontab for scheduling, example:
  
updateexp.php once per day
+
php -f /path/to/AWBS/files/tools/cron_filename
  
updtransfers.php once per day
+
HINT: /path/to/AWBS/files will be what you have set as the workdir path in the dbconfig.php file.
  
+
Please note:
  
The files are located in the tools directory.
+
The above descriptions are basic functionality of each file. They each have mulitple functions and all should be scheduled to ensure all features and functionality of AWBS work for you.
  
In most cases your command will look like this:
+
===Optional Cron Jobs===
  
<nowiki>*/15 * * * * php -q -f /your/path/to/awbs/tools/master_cron.php</nowiki>
+
'''lostpatrol.php''' - schedule as desired no more than once per day. This cron will remove all domain names in a lost status and move them to the domain archive table of the database. This tool can also be run manually in the configuration area of AWBS.
 +
Lost domains will be moved after 30 days by default.
 +
If you wish to archive them sooner, pass the days via cron as /tools/lostpatrol.php XX where XX is the number of days after Lost to archive.
 +
<br /><br />
 +
'''autocancel.php''' - schedule as desired no more than once per day. This cron will remove stale cron jobs with unpaid invoices, leaving 5 days in queue. Surf to https://[your_licensed_domain_name]/tools/lostpatrol.php?liverun=1 to see options.
  
(Substitute your correct path in the above example.)
+
==Directory Security (.htaccess)==
  
This would run the master_cron.php file every 15 minutes.
+
Securing the admin, tools and includes directories is very important!
  
Another example:
+
Upon completion of install, you may see a popup warning page when entering the admin area if your directories are not secure.
  
<nowiki>10 5 * * * php -q -f /your/path/to/awbs/tools/invoice_cron.php</nowiki>
+
Secure your directories with a username and password that you will remember, as you will be prompted for that login when entering the admin area and on other occasions such as sending customers email and various other functions during normal administration.
  
This would run invoice_cron.php file each day at 5:10am.
+
Keep in mind that '''all users with admin rights will need this login information.'''
  
If you get no errors in the crontab or the scheduling program you are using, your crons are configured correctly. (make sure it is configured to send email or check the logs as per your system.)
+
===Setting up directory security in cPanel===
  
Your install is complete, now you need to login as super admin and configure AWBS as per your company needs, customize as desired and test.
+
# Login to cPanel. Click the 'password protection' or 'password protect directories' icon or link, depending upon your cPanel theme and version.
 +
# Navigate to the admin directory by clicking on the folder icons and click on the word admin.
 +
# Check the box that reads: Directory requires a password to access via the web
 +
# Enter what you would like to appear in the login prompt for the directory security in the:
 +
# ''Protected Resource Name'' field. This is for display and can be anything you like.
 +
# Click the ''Save'' button.
 +
# Click the ''Back'' link.
 +
# In the ''Username'' field, enter the username you wish to use for your directory security.
 +
# In the ''Password'' field, enter the password you wish to use for your directory security.
 +
# Click the 'Add/modify authorized user' button.
 +
Repeat the above for both the includes and tools directories.
 +
 
 +
===Setting up directory security in DirectAdmin===
 +
 
 +
# Use the DA file manager to navigate to the admin directory and click the protect link.
 +
# Check the box next to:<br>Use Password Protection on /[path]/admin
 +
# Protected Directory Prompt: type what you want to appear at the login prompt
 +
# Set/update user: enter the username you wish to use for directory security<br>and password: enter the password you wish to use for directory security
 +
# Re-enter password: enter the above password again
 +
# Save.
 +
Repeat above for both includes and tools directories.
 +
 
 +
===Other systems===
 +
 
 +
Different systems offer different tools for directory security. Most control panels will have a gui method to setup directory security. Consult with your control panel's documentation or your server administrator for specific instructions on setting up your directory security.
 +
 
 +
NOTE: Some systems even when the directory security is in place, will still trigger the popup page warning you of insecure directories when entering the admin area. If your directories are secure and you still get this pop up page, go to the Extended System Configuration page of the AWBS Configuration area and change:
 +
 
 +
supress_warnings to a 1
 +
 
 +
==Tips==
 +
TIPS:
 +
Add the following code to your .htaccess file (in your AWBS root directory) to add extra speed to your site:
 +
<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$">
 +
Header set Expires "Thu, 15 Apr 2018 20:00:00 GMT"
 +
</FilesMatch>
 +
 
 +
 
 +
Or, for Windows, in the IIS Manager right click on the folder you want to add content expiration to (images, js etc...).<br />
 +
Choose HTTP Headers and then turn on Enable Content Expiration.<br />
 +
Choose a date at least 30 days in the future.

Latest revision as of 10:07, March 27, 2024

System Requirements

View AWBS System Requirements

Install Checklist

  1. Create a new MySQL database with new user that has full rights to it.
  2. Upload AWBS files and license file.
  3. Edit dbconfig.php file.
  4. Run install script.
  5. Delete install directory.
  6. Secure admin, includes, and tools directories.
  7. Configure scheduled 'cron jobs'.
  8. Configure.
  9. Customize as desired.
  10. Test.
  11. Go Live!

Portal Mode option

Note: Portal Mode option is available in AWBS 2.8.0 and newer versions

Portal mode is designed for those who do not wish to use AWBS as their website.
Portal mode can be enabled during the installation process or turned on after installation in the System Options, Look and Feel section.
Select True for the Portal Mode setting.
Portal mode automatically uses index5.php template (Homepage 5).

If you enable Portal Mode, you must configure a Hosting Home URL in the Website/Company Info page of the configuration as well.
Set the Hosting Home URL to your main website's URL.

It is recommended AWBS be installed to a directory under your web directory if using Portal Mode, however it is not required.

Installation

Create Database

Create a new MySQL database and a new user that has full rights to the database. Check with your server's control panel documentation for details on how to create databases on your system.

Upload files

Unzip the AWBS full install zip file with paths in your computer. Upload all files maintaining the directory structure. Upload in binary mode. Note: Many ftp clients have problems corrupting encoded files. We recommend Total Commander as a tool for uploading files as well as many other functions.

OR

Upload the AWBS full install zip file and unzip on your server. If you do this, be sure your files are owned by the user who owns the site.

AND

Upload the license.dat file to the web directory where you will run AWBS. For example, if your site's web directory is /home/youruser/public_html, then upload the license.dat file to the /home/youruser/public_html directory.

Instructions on where to get your license.dat file come via email when your order is filled. If you ordered your AWBS license from awbs.com, please check the email you got when the order was filled. If you ordered your AWBS license from one of our resellers, they should have provided the file to you either by way of download or they may have emailed it to you direct. Please check with your reseller if you did not receive the license.dat file.

Edit dbconfig.php file

Open the includes/dbconfig.php file for editing using Total Commander or your control panel's file editor, nano, vi or whatever text file editing tool you have.

Remove the following line:

$needs_edit=1;

Edit these lines with your database information:

$dbhost (change only if your server won't connect to MySQL via 'localhost' or if your db is located on another server)
$dbusername
$dbpassword
$dbdatabase

(Enter your information between the quotes in each line, overwriting the sample data that is there)

Edit this line with your correct physical path to your files:

$workdir

Linux example: /home/userdir/public_html
Windows example: c:\sites\sitename\webroot

Contact your server admin or control panel documentation if you do not know your path to your web directory. Each system uses it's own path structure and many servers are unique as per how they were installed.

Edit this line with your domain name preceded by a dot:

$cookie_domain

Save your changes and upload if editing remotely.

Run the install script

Open a new browser window. Surf to http://[your_AWBS_domain]/install/install.php (Substitute your domain name for [your_AWBS_domain])

You must have read the AWBS license agreement and agree to abide by the terms to continue with the install.

Once you have read the license agreement, Check the box and click "Begin Install"

Welcome: (License Check)

The next step is to verify your license. You should see something like the following:

License Status: Active

Your licensing has been verified and your system is now activated.

Once the license has been verified click the box at the bottom of the page labeled "Continue With Install"

Note: Error 5 indicates the license.dat file is missing. Be sure you have uploaded the license.dat file to the same directory that you uploaded the AWBS files.

Error 3 indicates your server cannot reach our license database via port 80. Ensure your server has internet access via port 80.

Step 1:

The next step is to check your php.ini configuration settings and make sure everything is ready to go.

You should see something like the following:

Safe Mode:  OK
Register Globals:  OK
Session Cookies:  OK
Compiled Curl:  OK

Environment Tests appear OK. Let's continue.....

Once the above information has been tested, click the box at the bottom of the page labeled "Continue to step 2"

Step 2:

The next step is to check your database settings and make sure everything is ready to go.

You should see something like the following:

DB User/Pass:  yourdbusername/yourdbpassword
Database Name:  yourdbname
DB User/Pass:  OK
DB Connect Test:  OK
Database Exists:  OK

Database Tests appear OK. Let's continue.....

Once the above information has been tested, click the box at the bottom of the page labeled "Continue to step 3"

Step 3:

The next step is to check your database structure and make sure the database is ready to go.

You should see something like the following:

Database Structure Creation appears OK. Let's continue....

Once the above information has been tested, click the box at the bottom of the page labeled "Continue to step 4"

Step 4:

The next step is to populate the database with your company's information. Fill in the following info and then continue.

You will need to fill out the information like shown below:

Company Information
Company Name:  
Company Address1:  
Company Address2:  
Company City:  
Company State:  
Company Zip:  
Company Country:  
Company Phone:  
Company Fax:  
Admin Email:  
Support Email:  
Sales Email:
Billing Email:

Server Settings

Edit the licensed urls if necessary. Add/Remove the www. as needed/desired, edit http and https as needed, and add any subdirectory information to the url. Do NOT add a trailing slash. If you do not wish to use https, make the bottom url the same as the top.

If you alter the domain name or subdomain, it will not match your license and you will have license errors.

Non-Secure URL: examples: http://[your_licensed_domain_name]/directory or http://[your_licensed_domain_name] or http://[your_licensed_subdomain]

Note: The URL above should reflect the url you surf to to get to your awbs site.

Server Admin

This is where you will establish the 'super admin' account and login. The password can be changed later.

Remember this login!

Admin First Name:  
Admin Last Name:  
Admin Username:  
Admin Password:  

Once you have the above information filled out as needed, click the box at the bottom of the page labeled "Continue to step 5"

Step 5:

AWBS installation is complete!

At this point, the basic install is complete.

Click the box labeled "Finish Install"

Delete the install directory

Remove or rename and relocate the install directory. This is a security measure, you don't want anyone surfing to it.

Secure the admin, includes and tools directories

Most hosting control panel systems provide a link to setup directory password protection. Most use .htaccess files. Consult with your hosting control panel documentation for details on how to secure directories. If you do not have a Hosting Control panel, please see the following article on .htaccess protecting your folders manually: Setting Up .htaccess Protection

Configure your cron jobs

You will need to schedule 4 files to run.

master_cron.php every 15 or 10 minutes
invoice_cron.php once per day
updateexp.php once per day
updtransfers.php once per day

The files are located in the tools directory.

In most cases your command will look like this:

*/15 * * * * php -f /your/path/to/awbs/tools/master_cron.php

(Substitute your correct path in the above example.)

This would run the master_cron.php file every 15 minutes.

Another example:

10 5 * * * php -f /your/path/to/awbs/tools/invoice_cron.php

This would run invoice_cron.php file each day at 5:10am.

If you get no errors in the crontab or the scheduling program you are using, your crons are configured correctly. (make sure it is configured to send email or check the logs as per your system.)

Your install is complete, now you need to login as super admin and configure AWBS as per your company needs, customize as desired and test.

Easy cPanel Install

Refer to the Easy cPanel Install Doc for details.

Easy Plesk Install

Refer to the Easy Plesk Install Doc for details.

Easy DirectAdmin Install

Coming Soon

Cron Job Info

There are 4 scripts that need to be scheduled. We refer to them as 'cron jobs'. Schedule them using whatever scheduling tool is available to you on your server. Linux/FreeBSD servers have crontab, which can be used to schedule them. Windows servers may have a task scheduler or you may need to install a 3rd party scheduling software.

master_cron.php - schedule every 10 or 15 minutes as desired.

The master_cron.php will run all jobs in the open job queue.

invoice_cron.php - schedule only once every 24 hours at a low traffic time on your server.

The invoice_cron.php is responsible for generating invoices, sending out invoice notice emails, late notices, etc. to customers. It also charges the credit cards for recurring invoicing, if your processor is supported.

updateexp.php - schedule once every 24 hours at a low traffic time

The updateexp.php cron checks for domains expiring in 60, 30, 7 and 0 days and sends out expire notices to customers. If customers have auto renew checked on their domain and have credit in their account or a credit card on file, updateexp.php will send them a notice at 35 days prior to expire notifying them their domain will be auto renewed in 5 days.

updtransfers.php - schedule once every 24 hours at a low traffic time

The updtransfers.php will check for completed transfers at the registrar and update the status in the AWBS database.

Example crontab command AWBS version 2.4.0 and newer:

cPanel example:

php -f /home/userdir/public_html/tools/master_cron.php

(replace 'userdir' with your cpanel username)

Use the same format for any server using crontab for scheduling, example:

php -f /path/to/AWBS/files/tools/cron_filename

Example crontab command prior versions:

cPanel example:

php -f /home/userdir/public_html/tools/master_cron.php

(replace 'userdir' with your cPanel username)

Use the same format for any server using crontab for scheduling, example:

php -f /path/to/AWBS/files/tools/cron_filename

HINT: /path/to/AWBS/files will be what you have set as the workdir path in the dbconfig.php file.

Please note:

The above descriptions are basic functionality of each file. They each have mulitple functions and all should be scheduled to ensure all features and functionality of AWBS work for you.

Optional Cron Jobs

lostpatrol.php - schedule as desired no more than once per day. This cron will remove all domain names in a lost status and move them to the domain archive table of the database. This tool can also be run manually in the configuration area of AWBS. Lost domains will be moved after 30 days by default. If you wish to archive them sooner, pass the days via cron as /tools/lostpatrol.php XX where XX is the number of days after Lost to archive.

autocancel.php - schedule as desired no more than once per day. This cron will remove stale cron jobs with unpaid invoices, leaving 5 days in queue. Surf to https://[your_licensed_domain_name]/tools/lostpatrol.php?liverun=1 to see options.

Directory Security (.htaccess)

Securing the admin, tools and includes directories is very important!

Upon completion of install, you may see a popup warning page when entering the admin area if your directories are not secure.

Secure your directories with a username and password that you will remember, as you will be prompted for that login when entering the admin area and on other occasions such as sending customers email and various other functions during normal administration.

Keep in mind that all users with admin rights will need this login information.

Setting up directory security in cPanel

  1. Login to cPanel. Click the 'password protection' or 'password protect directories' icon or link, depending upon your cPanel theme and version.
  2. Navigate to the admin directory by clicking on the folder icons and click on the word admin.
  3. Check the box that reads: Directory requires a password to access via the web
  4. Enter what you would like to appear in the login prompt for the directory security in the:
  5. Protected Resource Name field. This is for display and can be anything you like.
  6. Click the Save button.
  7. Click the Back link.
  8. In the Username field, enter the username you wish to use for your directory security.
  9. In the Password field, enter the password you wish to use for your directory security.
  10. Click the 'Add/modify authorized user' button.

Repeat the above for both the includes and tools directories.

Setting up directory security in DirectAdmin

  1. Use the DA file manager to navigate to the admin directory and click the protect link.
  2. Check the box next to:
    Use Password Protection on /[path]/admin
  3. Protected Directory Prompt: type what you want to appear at the login prompt
  4. Set/update user: enter the username you wish to use for directory security
    and password: enter the password you wish to use for directory security
  5. Re-enter password: enter the above password again
  6. Save.

Repeat above for both includes and tools directories.

Other systems

Different systems offer different tools for directory security. Most control panels will have a gui method to setup directory security. Consult with your control panel's documentation or your server administrator for specific instructions on setting up your directory security.

NOTE: Some systems even when the directory security is in place, will still trigger the popup page warning you of insecure directories when entering the admin area. If your directories are secure and you still get this pop up page, go to the Extended System Configuration page of the AWBS Configuration area and change:

supress_warnings to a 1

Tips

TIPS: Add the following code to your .htaccess file (in your AWBS root directory) to add extra speed to your site:

<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$">
Header set Expires "Thu, 15 Apr 2018 20:00:00 GMT"
</FilesMatch>


Or, for Windows, in the IIS Manager right click on the folder you want to add content expiration to (images, js etc...).
Choose HTTP Headers and then turn on Enable Content Expiration.
Choose a date at least 30 days in the future.