How do I use mailing lists?

You can create mailing lists from the Email -> Mailing Lists menu of your Control Panel.

Just click on the ‘Create a new mailing list‘ button on the top right and fill in the following details of your first mailing list:

 Mailing List Address – here you have to specify the address of the mailing list. When you send an email message to the address of the mailing list, this message is sent to all the subscribers of the mailing list.

The first part of the mailing list address is the name of the maling list. For instance, if example-list@my-site-name.net is the mailing list address, then example-list will be the mailing list name. 

Next, you have to specify the email address of the administrator of the mailing list.

The administrator email address will receive notifications about subscriptions, questions from subscribers and potential subscribers and other administrative e-mails.

After that, you have to type and confirm the administrator’s password.

The mailing lists on our servers are operated via commands sent to an automated mailing list management program called Majordomo. Majordomo is fairly easy to use but there are certain rules that you must follow:

– commands are sent to majordomo@my-best-domain.com
– commands must be in the body of the message (not the subject)
– each line is considered a new command

Here is a list of all the commands that you can use and their short explanations:

subscribe – this command subscribes to the mailing list the e-mail address that you are sending from and it must be followed by the name of the mailing list that you wish to subscribe to. If you wish to subscribe a different e-mail address, the command looks like this:

subscribe example-list example-mail@my-best-domain.com

unsubscribe – this command unsubscribes from the mailing list the e-mail address that you are sending from and it must be followed by the name of the mailing list that you wish to unsubscribe from. If you wish to unsubscribe a different e-mail address, the command looks like this:

unsubscribe example-list example-mail@my-best-domain.com

which – this command shows the mailing lists on this system that the e-mail address you are sending from is subscribed to. You can check for another e-mail address as well and then the command will look like this:

which example-mail@my-best-domain.com

That command can be further generalized in order to see the mailing lists that each e-mail address under the domain name example.com is subscribed to and then the command will simply be:

which my-best-domain.com

who – this command shows all the e-mail addresses that are subscribed to the mailing list and it must be followed by the name of the mailing list.

who example-list

info – this command shows detailed information about the mailing list itself and it must be followed by the name of the mailing list.

info example-list

index – this command shows if there are any files associated with the mailing list and it must be followed by the name of the mailing list.

index example-list

get – this command sends a request to retrieve a particular file that is associated with the mailing list and it must be followed by the name of the mailing list and the name of the file.

get example-list example.file

intro – this command retrieves the introductory message sent to new subscribers and it must be followed by the name of the mailing list. Non-subscribers may not be able to retrieve this.

intro example-list

lists – this command shows a list of all publicly available mailing lists on this system.

help – this command retrieves a help message that provides detailed information about working with Majordomo and the mailing list.

end – this command stops further processing of commands. That is useful if you use an automated signature for your e-mails. Otherwise each new line is considered a new command and you will receive false error messages.

And here is a list of the Majordomo commands that require the administrator password:

approve [password] subscribe/unsubscribe example-list example-mail@my-best-domain.com

This command approves the subscription or unsubscription of a particular e-mail address when the respective action requires the approval of the list owner. Have in mind that this is a standard subscribe/unsubscribe command preceded by “approve” + the adminstrator password.

approve [password] who example-list

This command shows the addresses on the anonymous list. Even the owner of the list cannot see who is on the anonymous list without the password.

passwd example-list [password] [new password]

This command allows you to change the administrator password by sending an e-mail. You can also change the password for the mailing list using the E-Mail Options > Mailing Lists menu of the Web Hosting Control Panel. Simply click on the Edit button next to the mailing list that you wish to change the password for.

newinfo example-list [password]

This command replaces the information file that people see when they subscribe or request with the info command. Everything after the password will be considered the new message unless you use the EOF word on a separate line.

config example-list [password]

This command sends a request to retrieve the self-documenting configuration file for the list.

newconfig example-list [password]

This command replaces the configuration file that you can retrieve with the config command and changes the configuration for the list as soon as it is validated. If you have other commands after that, they will be subject to the new configuration. Again, everything after the password will be considered the new configuration unless you use the EOF word on a separate line. If the new configuration file contains an error (an incorrect value), the entire file will not be accepted. There will be an error message dispaying the problem line(s). You are advised to keep a copy of the configuration files since only the error messages are returned but not the entire file.

How to Enable Memcached on Joomla

You can speed up your Joomla site by using memcached.

To enable memcached on Joomla, you need to modify a few settings in your Joomla configuration.php file first.

You can find this file in your Joomla site’s root folder. Using your favorite FTP software, edit this file and find the following lines:

public $caching = ‘0’;
public $cache_handler = ‘file’;

Change these lines to the following:

public $caching = ‘2’;
public $cache_handler = ‘memcache’;

Then, immediately after the two lines you edited, add these two lines:

public $memcache_server_host = ‘/home/sys/memcached.sock’;
public $memcache_server_port = ‘0’;

After you are done making all the changes, save the configuration file.

Configure Memcached in Joomla Settings

Now, we will configure memcached on our Joomla-based website.

Login to your Joomla site’s admin panel and navigate to System -> Global Configuration.

Click on the server tab at the top and scroll down to Cache Settings. From the drop-down menu select Persistent(Memcached).

Note: Make sure to enter the correct Memcached server host and port for your server.

Memcache(d) Server Host: /home/sys/memcached.sock
Memcache(d) Server Port: 0

Save the settings.

You’ve successfully enabled memcached on your Joomla website.

What is crontab?

The Cron Daemon runs on Unix-based Operating Systems and, in essence, is closely similar to the Windows Task Scheduler.

It allows you to post your own ”magic rules” for useful and time sparing automation of any of the scripts you will be working with.

Cron is what enables users to schedule jobs, which run automatically at a certain date or time and thus perform system administration or script-related tasks.

The crontab is the virtual ”scoreboard” for setting up cron jobs and represents a configuration file to which users write shell commands that run periodically, at a given schedule.

The Cron Daemon is a long running process that executes commands and performs scheduled tasks at a specific date or time.

The stored commands are what we call cron jobs and the utility, which is used to keep a record of them is Crontab.

For your convenience, we have created a visual interface for creating cron jobs.

It is located under the Advanced > Cron Jobs section of your Control Panel.

Learn how to set up a simple cron job in this tutorial: How to set up a cron job?

How to setup a cron job

In this tutorial, we will show you a few useful examples on how to create a cron job for your script-based websites.

Scripts usually include a working environment, which is sophisticated enough to work as a multi-structural base for performing a wide variety of tasks.

Those tasks altogether are easily implemented and combined into forums, informational portals, blogs, billing management systems, etc.

Although most often the implementation of a given script is done in real time and the users operate with a web-driven GUI to navigate through what the given script might offer, there are still some ”assignable” tasks that only site administrators can schedule.

Those tasks are what we call cron jobs – they carry important site/script maintenance information and pass system commands to the Cron Daemon via Crontab. Cron jobs are scheduled to execute shell commands or scripts at a given time or date.

Below you will find a few examples, which represent a shell command execution cron job and a script (cgi / php) execution cron job.

Cron jobs have the following formatting that we will divide into groups:

Cron job time schedule – [ Minute – Hour – Day – Month – Weekday ]

Cron job shell command – [ARGUMENTS]

Cron job script command – [PATH OF PHP/PERL] [ARGUMENTS] [PATH OF PHP SCRIPT]

Here is an example of cron job time scheduling and the allowed cron job operators:

.—————- minute (0 – 59) 
| .————- hour (0 – 23)
| | .———- day of month (1 – 31)
| | | .——- month (1 – 12) OR jan,feb,mar,apr … 
| | | | .—- day of week (0 – 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat 
| | | | |
* * * * * command to be executed

* * * * * => Execute every minute
0 * * * * => Execute every Hour
0 0 * * * => Execute every midnight
0 0 0 * * => Execute every Month
0 0 0 0 * => Execute every Weekdays

You can create cron jobs from your Control Panel.

To do that – navigate to Advanced > Cron Jobs and click on the ‘Create a New CronJob‘ button.

There you can also see the cron jobs that have already been created.

To set up a cron job – you must specify the email address where the results will be sent to, the date and the time when the job should be executed and the command, which should be executed.

Here is an example of running shell command driven cron jobs and script execution cron jobs:

0 * * * * rm -f * /home/www/my-best-domain.com/temp/

This command will initiate the rm (remove/delete) utility for file/folder deletion and will forcibly delete all the files under /home/www/my-best-domain.com/temp/

Let us say that you want to mail newsletters, site updates, etc. to your clients on a daily basis.

Most script systems have already prebuilt scripts for this purpose and many more automated services.

The cron job would look like this:

0 0 0 0 * /usr/bin/php /home/www/my-best-domain.com/mailcron.php

You can learn more on the allowed file types when using Crontab in the following tutorial: Files that could be executed with crontab – allowed file extensions.

Files that could be executed with crontab – allowed file extensions

There are no specific file types that can or cannot be executed from your account.

During our tests, the three most commonly used scripts showed excellent cron job compatibility.

These are PHP, Perl/CGI and bash scripts – with the corresponding extensions – *.php*.pl and *.sh.

Files included in a cron job entry should be Unix executables; in other words – should have execute permissions set.

You can do that using our File Manager (Files > File Manager section of your Control Panel).

Simply click on the desired file and set the permissions to 700 or 755 (the more commonly used format).

When specifying a new Perl cron job from our Crontab menu, we strongly recommend that you include the command perl at the start of the Command to execute field in order to achieve optimal level of support.

If you skip that step, the cron job may not be executed properly and the output may not be sent at all.

Also, when receiving the output of a cron task to your email address, you may get an error stating TERM environment variable not set in addition to the rest of the output.

The easiest way to resolve this error is by starting your bash script files with the following code:

#!/bin/bash
TERM=linux
export TERM

What is SSH, how do I activate and use SSH?

SSH, also known as Secure Shell, is a network protocol that creates a secured channel, which allows data to be transferred and exchanged between two hosts.

Basically, the Internet in its early days was designed to provide ease of use, not security.

SSH substitutes older protocols, such as telnet and rlogin, where passwords were passed in plain text and could be easily intercepted.

You can use SSH in order to connect to a remote machine and execute commands.

For example, you can import a database, find files and edit them.

A server-client environment is used when connecting via SSH. The connection is standardized at TCP port 2222. 

What you need in order to connect is an SSH client software application. PuTTY is one of the most popular.

A server daemon is constantly checking for incoming requests.

So how can you obtain SSH access to your hosting account?

First, check whether SSH is enabled for your web hosting plan – navigate to the Advanced section of your Control Panel and check for the SSH/Shell Access option. If you don’t see this option, it is not included in your web hosting plan.

If it is enabled for your web hosting plan, you will see the SSH/Shell Access option and the status will be either ”Active” or ”Not Active”.

Click on the ”Activate” button.

A message such as the one below indicates that SSH is not included in your web hosting plan:

Your hosting plan type does not allow an additional SSH service to be added! Please refer to the ”Account Usage” table on the left.

You might need to upgrade your plan features by using the ”Add or Upgrade Services” section.

In this case, you can order SSH as an upgrade from the “Add or Upgrade Services” link on the left.

Once you have SSH activated, all you need is an SSH client (e.g. PuTTy), a username and a password.

The username is the same as the one that you use to log into your Control Panel.

The password could be easily set from the Advanced > SSH/Shell Access section.

If you choose to use PuTTy, set the SSH host/server to ssh.supremecenterXX.com (replace XX with the number of the server where your account is located – you can see it in the address bar/URL bar when you are logged into your Control Panel).

How do I setup custom error pages for my website?

Whenever an error occurs on the server, it displays an error page to the visitor with information and tips about the possible cause for the error. These error pages do not match your website’s layout and are sometimes too general.

You may want to set up your custom error pages, which should be displayed to your visitors whenever an error occurs.
website’
There are two methods that could be used to achieve this.

1) Editing the domain/subdomain options in the Subdomain Manager section.

We have embedded the option to set a custom error page for server errors 400, 401, 403 and 404 inside the Subdomain Manager section of your Web Hosting Control Panel (My Domains > Hosted Domains).

Find your domain in the list and click on the “Edit Domain” icon () from Actions column on the right. You are now able to edit the error page options.

You should see the following options:

Error 400 page:
Error 401 page:
Error 403 page:
Error 404 page:

Initially, all error pages are set to “Default“. To set a custom error page, choose “Custom URL” and enter the path to the corresponding error page in the field.

If you haven’t created one yet, do this first and then get back to the Subdomain Manager section to update the settings.

2) Using .htaccess

Just like with the first method, which is described above, you must create the corresponding error page(s) first. When ready, open the File Manager section of your Hosting Control Panel (Files > File Manager) and navigate to your domain/subdomain folder – it usually has the same name as your domain/subdomain and is located inside the www/ directory.

Inside the domain folder create an empty file called .htaccess using the form located at the top of the File Manager section. Then edit the .htaccess file with the plain-text editor and insert the following code:

ErrorDocument 400 /custom400.html
ErrorDocument 401 /custom401.html
ErrorDocument 403 /custom403.html
ErrorDocument 404 /custom404.html

In the above example the custom 404 error page is located in the same folder as the .htaccess file and it is called custom400.html.

Edit the path and the name of each page accordingly to reflect the actual names and location of your custom error pages.

This method would work no matter what the settings in the Subdomain Manager section are.

How to redirect/forward a website (URL redirection)

There are different ways for you to redirect a domain to another one or, in general, one URL to another. Most of the available options are explained in this article:

1. Using our URL Redirection tool
In your Control Panel you will find the URL Redirection section (Advanced > URL  Redirection). For detailed information about the options visit the tool and click on the Help button.

2. Framed redirection
If you want to redirect visitors but keep the URL (address) in the address bar unchanged, you have to use framed redirection. Basically, what you do is create a file that loads the new website (which you want to redirect to) in a frame. To use framed redirection to redirect my-best-domain.com to my-best-domain.net, for example, you can create a file called index.html and put it inside the main folder of my-best-domain.com. The index.html file must have the following code:

<html>
<head>
<title>TITLE OF THE PAGE</title>
<frameset cols = "100%">
<frame src ="http://my-best-domain.net" />
</frameset>
</head>
<body>
</body>
</html>

Of course, make sure to replace “TITLE OF THE PAGE” with the actual title that you want your visitors to see and replace “http://my-best-domain.net” with the actual web address, which you want to redirect the visitors to.

(3) Using .htaccess and the Redirect directive

If you need to forward visitors to the new address and don”t mind that the URL in the address bar will change, you can use the following technique:

Create a file called .htaccess inside the main folder of your domain. You can do this using the File Manager (Files > File Manager) section of your Web Hosting Control Panel. Edit the .htaccess file to put the following code in it:

Redirect 301 / http://my-best-domain.net/

The above code will redirect visitors to http://my-best-domain.net/ and “tell” search engine spiders (bots) that your URL has changed permanently – this is what the 301 code means.

Using this technique you can also redirect specific URLs, for example a single page. If you used to have a page called page.html and you renamed it to newpage.html, you may want to create a redirection, which will forward visitors who try to open page.html to newpage.html. This is how it”s done with .htaccess: 

Redirect 301 /page.html http://my-best-domain.com/newpage.html

*Additional uses of .htaccess:

You have changed the file extension?

RedirectMatch 301 (.*).html$ http://my-best-domain.com$1.php

This example is perfect if you have decided to switch from .html pages to .php, keeping the old names of the pages and changing only the file extensions. Now, be careful with this because any .html page there is will be redirected to a page with the same name but with a .php extension, regardless of whether such .php file actually exists.

Redirect all www traffic to a NON www version of the site (http://www.my-best-domain.com -> http://my-best-domain.com):

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.my-best-domain.com [NC]
RewriteRule ^(.*)$ http://my-best-domain.com/$1 [L,R=301]

Redirect all NON www traffic to a www version of the site (http://my-best-domain.com -> http://www.my-best-domain.com):

RewriteEngine on
RewriteCond %{HTTP_HOST} ^my-best-domain.com [NC]
RewriteRule ^(.*)$ http://www.my-best-domain.com/$1 [L,R=301]

You have purchased SSL for your domain and now wish to redirect ALL traffic to an HTTPS version of your site?

RewriteEngine On
RewriteCond %{SERVER_PORT} !443
RewriteRule ^(.*)$ https://www.my-best-domain.com/$1 [R]

(4) Redirecting using the META tag refresh
In HTML files you can put a META tag refresh to refresh the page after a certain amount of time. The META tag refresh also allows you to refresh to a new URL, which virtually means forwarding the visitors to a new web address. To use this technique you must create an index.html file inside your domain”s main folder with the following code:

<META http-equiv="refresh" content="0;URL=http://my-best-domain.com">

 This will redirect the visitor immediately to my-best-domain.com.

(5) Using the Location Header in PHP
This technique works similarly to the afore-mentioned one where we redirected the visitor using the HTML META tag refresh. However, instead an index.html file, here you must create an index.php file inside your domain”s main folder and use the following code:

<?
header("HTTP/1.1 301 Moved Permanently");
header ("Location: http://www.my-best-domain.net");
?>

This will redirect the visitor to http://www.my-best-domain.net and will “tell” search engine bots that the address has changed permanently.

(6) Redirecting using JavaScript
Control over what page is loaded into the browser rests in the JavaScript window.location property. By setting window.location equal to a new URL, you will in turn change the current webpage to the one that is specified. If you want to redirect all your visitors to www.my-best-domain.net when they arrive at your site, you will just need the script below:

<script type="text/javascript">
<!--
window.location = "http://www.my-best-domain.net/"
//-->
</script>

What is a PostgreSQL database?

PostgreSQL is another Relational Database Management System (RDBMS) that is supported on our servers. The database stores information and the data is structured in tables – rows and columns.

A great deal of web applications that you can use on your website, such as shopping carts, forums, blogs or content management systems (CMS), require the use of a database.

Most open source applications use MySQL databases since they are easier to use and generally work faster. PostgreSQL, on the other hand, is more complex, which allows the developer more flexibility and provides more features.

For more information on comparing MySQL and PostgreSQL databases, please refer to this article: What is the difference between MySQL and PosgreSQL?

Important notice: Not all hosting plans include support for PostgreSQL databases. If you can’t see the PostgreSQL Databases section under the Databases menu on your hosting control panel, your plan does not support PostgreSQL.

You can create a PostgreSQL database using the Databases > PostgreSQL Databases menu of the Web Hosting Control Panel. Once you open that menu you’ll see the form for creating new PostgreSQL databases. You have to specify the name of the database.

It always starts with the username of your hosting account (username_) and then you can choose the unique part that will distinguish the particular database.

Then you have to specify and confirm the password for that database and click on the button below to create the database.

Below the form for creating new databases there is a table with all the existing PostgreSQL databases in your account.

For each database you have the option to change the password, delete the database or log in via the phpPgAdmin tool. For more information on how to log in, please refer to the respective article in this knowledge base.

Additional notes:

  • A database created on our servers will have only one user that is created by default (new users cannot be created) and the default user of the database has all the priviliges.
  • The database name and the database username in our system coincide.
  • It is advisable to create separate databases for every application that you use for easier management.

Why is there a red “X” (DNS error) for my domain’s name servers?

Generally, there are two cases in which your domain name may appear with the red X mark in the Hosted Domains section of your Control Panel: either the domain name does not have the required name servers set or the DNS update has not been completed yet.

Domain name registrations and DNS modifications could take up to 24 hours to update after they have been initiated.

You can find the name servers that you should use for all your domain names above the hosted domains table.

If you’ve registered your domain with us and you haven’t made any changes to the name servers yourself, it should already be using our name servers.

However, if the domain was registered or added to Hosted Domains more than 24 hours ago but you still see a red  mark indicating that the name servers are not correct, you can try to refresh the name servers’ status manually. 

You can do that by clicking on the NS status icon in the first column of the table of hosted domains. 

If this does not work, you will need to check if you have the correct name servers set for your domain.  

To do that, in the Registered Domains section right click on the given domain name and then select the NS status option. 

This will bring up a window with two fields (one for each name server). These fields show you the two name servers that the domain name is currently using. 

To change the name servers, just type in the ones that are featured in the Hosted Domains section and click on the Change NSes button.

Make sure that domain names registered with another company and added to your Hosted Domains here are using our name servers – usually you can do this from the domain management panel provided by your registrar (the company you registered the domain(s) with).

If you are sure that your domain is using the correct name servers and more than 24 hours have passed since you registered/hosted the domain or updated the name servers, then it is most likely our system that hasn’t “noticed” the change yet.

If that’s the case, we can force the system to check the name servers of your domain.

To request this, please open a ticket from the Help center or the button below.