We build. You grow.

Get best community software here

Start a social network, a fan-site, an education project with oxwall - free opensource community software

How to fix this oxwall cron problem. (/bin/sh: cron.php No such file or directory) | Forum

Ebony Wood
Ebony Wood Dec 9 '12
Many Oxwall CMS users like myself have virtual shared servers with NO access to shell/SSH. So the traditional methods of setting Oxwall cron jobs as shown in the oxwall docs will not work for us.
But using my cpanel, I set up my cron job as instructed. I thought it was working until a week later in my server email box,  I had received over 1200 email messages from my server telling me that it could not locate the cron 'run.php'  After several attempts at changing the URL path to cron.php in my cpanel it was still not working.

The true culprit is the oxwall default  '.htaccess file' it must have an error or it just redirects the server to prevents access to cron.php. (And I think oxwall needs to look at this "Oxwall version 1.41").

Alternative way to resolve the 'file not found' cron error on oxwall.
1 - delete your default .htacess file but put it back immediately after you finish fixing your cron job.

2 - Upload this simple PHP code that I wrote(it is safe and harmless, view it at the bottom of this message). This code will help you to locate your cron.php document root. That is the folder where your cron.php file is located. Make sure you upload the show.php file into  the same folder where your cron.php file is. MOST cron job error problems are just because  the wrong path to the document root was used.

3 - After uploading the show.php file into your folder. Point your browser to "http://www.yourwebsite.com/ow_cron/show.php" it will print out the correct path your cron.php folder. Copy this information and use it later in your Cpanel to enter the path to your cron job.

4 - Important!. Using your FTP software like fileziller etc, Check the permissions for your 'cron.php' file. make sure that It has  owner execute permission.  If owner execute permission is not there, you will also get a "file not found error". I had assumed that after entering the path to cron.php, the server would automatically assign execute permissions to the cron.php. I would not count on that.

5. Important!  After you have finished setting up your cron job. Put back the original .htaccess file into your server.

Php files are not allowed to be attached so below is the code for show.php
---------------------------------------------------------------------------
<?php

if (isset($_SERVER['DOCUMENT_ROOT']))
{
echo "Your Document Root: ".$_SERVER['SCRIPT_FILENAME']."</b>";
}

if (!isset($_SERVER['DOCUMENT_ROOT']))
   {
    $_SERVER['DOCUMENT_ROOT'] = substr($_SERVER['SCRIPT_FILENAME'], 0, -strlen($_SERVER['SCRIPT_NAME']));
    echo " Your Document Root: ".$_SERVER['DOCUMENT_ROOT']."</b>";   
   }

?>
---------------------------------------------------------------------------

DISCLAIMER!! I am not an expert, these suggestions are from my personal experience/ personal opinion. So if you want to follow it, do so at your own Risk.

The Forum post is edited by Ebony Wood Dec 9 '12
Hadi Kamell
Hadi Kamell Dec 11 '12
yes

nice way to detecting root of server