This is an old revision of the document!
The installation process is a very simple task. There are 4 steps:
Also check out the post install steps.
Once you received the package file from us you need to unarchive it. It is compressed with the popular zip format and you need an unarchiving utility like Winzip or the free 7-Zip to unzip it. After unzip you will have a folder 'etano' on your computer. What you need to transfer to the server are all files inside the 'etano' folder.
To transfer the files to the server you need a ftp file transfer utility. If you don't know what that is you should try Filezilla. It's free and easy to use.
You can transfer the files either directly to your web server document root (usually 'public_html' or 'www') in which case you will access the site as http://www.yourserver.com or in a sub-folder inside the document root (e.g public_html/mysite) in which case you will access the site as http://www.yourserver.com/mysite.
Make sure that you transfer all files in binary mode or some scripts might not work. Configuring your ftp client to transfer in binary mode depends very much on the used program but you should find this option in the Settings/Options/Preferences section.
Etano needs a database to store all information about users and other data. The installer creates the necessary structure and inserts the default data but it needs to know into which database to insert this and what user and password to use to connect.
To create the database and the user you need to connect to your server control panel. Details about it should be in the welcome email you received from your host. The most popular control panels are cPanel, Plesk, Webmin.
Here are the detailed instructions for cPanel:
$dbh=mysql_connect ("hostname", "username", "<PASSWORD HERE>") or die ('I cannot connect to the database because: ' . mysql_error()); mysql_select_db ("databasename");
Note: At this point, depending on your configuration, you might receive an error: **500 Internal Server Error** In this case please edit the .htaccess file and remove all lines starting with php_value or php_flag. These lines set the best environment for Etano but it can run even if you remove these lines. Once you have edited the .htaccess file then return to the install page. You may need to enter the full path ... http://yoursite.com/install/
Then simply continue to follow the instructions on screen.
The default username and password for the administration panel are:
You are urged to change the default password the first time you log into your admin panel. Keeping the default password may expose your site to hackers.
At the end of the installation process you will get some information regarding the cron job you need to set. Please save this information until you complete the next step (setting up the periodic jobs). The important bit is the "command to be run by cron".
The application depends on a single periodic job to do all maintenance tasks like creating cache files for new members or blog posts, sending messages and emails from/to members, removing invalid members (and the ones marked for deletion by the administrator), cleaning up and optimizing the database, fetching news from foreign feeds, etc. This periodic job has to run every 5 minutes. Depending on the time of the day and the date, the script will do different tasks. The site will seem non-functional until you activate this periodic job so it is very important that you set it up correctly from the beginning.
In the previous step we told you to save the "command to be run by cron" which you were given at the end of the installation process. You will need to use it below. If the command starts literally with "/path/to/php -f …" then you have a problem. It means that the installer was unable to auto-detect where the php binary is and you cannot continue until you find it. There are alternative ways to run the periodic job but they are less desirable. For alternative ways see the end of this section. But before you try the alternatives you could ask your hosting provider about the "path to php cli binary". CLI stands for 'command line interface' and it means that you need to run a php script from the command line.
Assuming that your php binary path was correctly detected (the command listed in the install process should be like "/usr/bin/php -f ….") then you can continue with this document.
On linux operating systems the periodic jobs are run by the cron utility (and are called "cron jobs"). On Windows they are called scheduled tasks and are run by the Windows scheduler.
Setting up the jobs depends a lot on your system. We'll explain below how to set it up in cPanel and then directly from the command line:
What is cPanel?
cPanel is the most widely used web based control panel tool provided by your host which helps you manage your web hosting account through a web interface. If your host uses another control panel such as "Plesk" you'll need to seek instructions from your host or another source.
What is the purpose of Cron Jobs?
Cron Jobs are designed to maintain a list of commands or tasks that the Etano system needs to run at various time intervals, including periodic maintenance. Having tasks run at various times also helps spread the load of resources used so your site runs as smooth and efficent as possible, which becomes especially important as your site grows where you begin to have lots of members online.
Make sure that your host allows crons to be run every 5 minutes, some shared hosting plans do not allow crons to be run under 10 or even 15 minutes. GoDaddy and HostGator are a couple of examples, they only allow cron jobs under 15 minutes on their VPS and Dedicated server plans. Many hosts aren't up-front as to how frequently you can run cron jobs, so you may need to do some digging in their site terms or forums, or ask them directly. Most will allow you to make cron settings of 5 minutes in cPanel, but that doesn't necessarily mean it's going to actually work.
1) Access your cPanel interface and login, then click on the icon located in the Advanced section of your cPanel interface.
You may next be asked to choose your experience level. If so choose 'Standard'.
2) Select the predefined time periods shown below from the Common Settings drop-down menu.
The "Command" field is where you enter the "command to be run by cron" that you received at the end of the installation process, which should look something like this:
/usr/bin/php -f /home/your_user/public_html/tools/cron/cron.php
If you failed to make a note of (or copy) the "command to be run by cron" that you received at the end of the installation process, you will need to either go thru the install process again, or ask your host what the correct command is for your server. You can also try getting your correct server path by viewing the includes/defines.inc.php file on your server, and looking at this line:
Then you would include the path in the cron command so it's like this:
/usr/bin/php -f /home/your_user/public_html/tools/cron/cron.php
Make sure that your cron jobs are set at */5 * * * * and not 5 * * * *
*/5 is for every 5 mins and capable of running crons every 5,10,15,20,25,30,35,40,45,50,55 minutes.
If you have the cron set at 5 * * * it will only run every 5 minutes but will not run any cron jobs set at other intervals less than one hour, and the Etano script has some key cron jobs that need to be run every 5 and 10 minutes.
3) This step is optional. Enter the email address where you want the cron output sent to. This can be beneficial if you're having issues with your cron jobs as you will be able to tell if the crons are working or failing.
Some common symptoms that you're crons might not be functioning properly:
When a new member joins, and after waiting 10 or 15 minutes, they don't appear in the search results or in the "Latest Members" widget. New blogs don't show up after waiting 10 or 15 minutes. Certian email notifications not being sent out.
Note: Once you get the cron jobs working properly, it won't show members that were created while the crons weren't functioning, the only way they will be released and updated is by 'regenerating' your skin under the 'Skin Settings' in your Etano admin.
Adding cron jobs from the command line is for advanced users who know their way within the linux environment and it is not recommended for beginner. However, here are the steps:
1. In order to avoid permission conflicts you should run the periodic job as the same user with the one apache runs as for your site. Alternatively you can run the cron job as root.
3. The default editor of the system (which usually is 'vi') should have been started with the current crontab file. Go to the end of the file and enter this line:
*/5 * * * * /usr/bin/php -f /home/your_user/public_html/tools/cron/cron.php
Of course, you need to change the path to php binary and the path to the cron.php file accordingly. You should have the actual command from the last step of the install process. 4. Save and quit.
The 'vi' editor has its own set of commands for adding a new line or saving and quitting. Here is a short list, for more details please consult the vi manual: - new line: press ESC then press 'o' - save and quit: press ESC then enter ':wq' and press ENTER - quit without save: press ESC then enter ':q!' and press ENTER - delete a character: press ESC then go with the cursor to the character you want to delete and press 'x' - delete a line: press ESC then go with the cursor to the line you want to delete and press 'd' twice.
If your server doesn't have the php cli binary installed or if your host does not allow you to access it, you can simulate a browser accessing the cron script every 5 minutes. For this we created the cron_web.php script. If the path to the cron script you were given at the end of the install process is
then the path to cron_web.php is
You can use the 'wget' utility to simulate a browser. It is a widely used utility on linux systems so it is likely that you have it installed on your server. Problem is that you need to figure out the path to wget. Ask your host if not sure.
The command to be run by cron is:
/path/to/wget -q -O /dev/null http://www.yourserver.com/tools/cron/cron_web.php?lk=«license key»
Replace '/path/to/wget' with the actual path to wget, 'http://www.yourserver.com' with the actual address of your site and '«license key»' with the license number of your Etano. For example:
/usr/bin/wget -q -O /dev/null http://www.myserver.com/tools/cron/cron_web.php?lk=1234
If your cron job didn't run for a while (or not right after you finished the install process), some cache files might not have been generated. The cron job only generates cache files for new members and blog posts (approved in the last 10 minutes). It does not generate the cache for members who joined yesterday for example. In this case yesterday's members will not appear in search results, although nothing is wrong with the site.
To regenerate the cache for ALL blog post caches you can access
http://www.yourserver.com/tools/cron/gen_blogs_full.php from your browser.
To regenerate the cache for ALL members go to your admin panel - Skin Settings (in the Site Setup menu category) and click on 'Regenerate all skins' link.