GoDaddy Hosting - No Input File Specified

Permalink
I know there have been numerous posts regarding this subject and have tried them all with no success. I'm getting desperate so hence this post. My problem is my home page displays but selecting any other page in the menu results in "No Input File Specified." I also cannot login. This also results in same message.

I developed site on local Windows machine. Before uploading to GoDaddy, I followed instructions in Remo's book and disabled pretty url's and cleared cache. I zipped all files in htdocs and ftp'd using GoDaddy's FTP File Manager. I exported database and then imported using the MySql database option at GoDaddy.

I created a PHP5.ini file at the website root and put in it:
cgi.fix_pathinfo = 1

That didn't work so I added .htaccess file and put it it:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>

My home page did not at first have correct formatting and I made the changes referenced in the following C5 post.

http://www.concrete5.org/community/forums/chat/migrated-to-godaddy-...

This changed the stylesheet reference in header.php from
<link rel="stylesheet" media="screen" type="text/css" href="<?php echo $this->getStyleSheet('main.css')?>" />
to
<link rel="stylesheet" href="<?= $this->getThemePath();?>/main.css" type="text/css" media="screen" />
This worked for me as well and I don't know if it makes a difference.

I have GoDaddy Deluxe hosting and my test website is in a subdomain because I haven't purchased a name yet. The website files are in a subdirectory off the root.
c5sites\websitename

The site.php file contains the following:
<?php
define('DB_SERVER', 'glhfh.db.5577968.hostedresource.com');
define('DB_USERNAME', 'glhfh');
define('DB_PASSWORD', 'password!');
define('DB_DATABASE', 'glhfh');
define('BASE_URL', 'http://testwebsites.ksavs.com');
define('DIR_REL', '');
define('PASSWORD_SALT', 'u9kjZ2h7WbZ8A4mhVMVgUlgzGNUumsQqYOhybVV6FRSUSttY2SqUAp66LSjDke7q');
define('PERMISSIONS_MODEL', 'advanced');
$config['index_page'] = "index.php?";
$config['uri_protocol'] = "QUERY_STRING";

The last 2 lines are from a post at
http://codeigniter.com/wiki/Godaddy_Installaton_Tips...

but it doesn't seem to matter whether they are in there or not.

Any suggestions would be greatly appreciated.

 
kirkroberts replied on at Permalink Reply
kirkroberts
Have you tried turning off Pretty URLs to see if the site works like that?
Then maybe turn it back on.
Sometimes things just need to be reset.
Nornik replied on at Permalink Reply
Looks like its working. Is it still messing up?
kirkroberts replied on at Permalink Reply
kirkroberts
I see the site fine, too:http://testwebsites.ksavs.com

By the way, shabib, you'll definitely want to change your database login credentials now that you've posted them to the internet! Better safe than sorry.
Nornik replied on at Permalink Reply
Unless "Password!" is the real password, looks like he didn't give it all out. Plus on actual nice thing about GD is that the address you access your database manually is not the address your scripts use to access the DB and you can't call a GD sql server outside GD doors.

I know, it was shocking to me too. They actually have a pretty nice secure setup. LOL.
shabib1819 replied on at Permalink Reply
Thank you everyone for responding.

Site looks ok and I have pretty URL's working. However, when I sign in to edit site, and select Edit Page, the menu bar at the top of the page does not change, and I can select the editable regions but can't change anything.

I have done much testing on goDaddy and have arrived at the following conclusion. If you install or transfer a site into a root directory of a domain (no subdirectories) everything is fine. If not, there must be a path issue and I'm still trying to figure out which file to adjust for this. Any clues?

The site link I posted was a concrete install that I transferred from my local machine to goDaddy. I had put it in a directory called \c5sites\habitat. The subdomain testwebsites.ksavs.com points to this directory. I wasn't sure if this was a transfer issue so created a NEW install in another subdirectory.

When I created a new install in the directory \c5sites\concrete5, there was a minus sign next to the Support for C5 Request URLs on the install screen.

Support for C5 Request URLs
concrete5 cannot parse the PATH_INFO or ORIG_PATH_INFO information provided by your server.

I also created an install in the root directory of another domain I wasn't using. Guess what? The install went smooth with no errors and I have it up and running and can edit pages just fine.

Conclusion: if in the root, you are fine. If not in the root, not fine. Does anyone know what needs to be adjusted for Concrete5 to work in a subdirectory on GoDaddy??
Nornik replied on at Permalink Reply
If you don't want it in the root you have two options. One is modify the site.php's file base_url line to include the sub
define('BASE_URL', 'http://www.yoursite.com/sub');

The other is to set-up a subdomain name in your DNS and route it to the sub-folder. This will then make your install the root of the subdomain.
kirkroberts replied on at Permalink Reply
kirkroberts
I usually set up a subdomain, as Nornik suggested.
That way you don't have to worry about pathing issues.

If you want to update your /config/site.php file instead, I believe the "official" way to do it is like this:
define('BASE_URL', 'http://www.yourdomain.com'); // note no trailing slash
define('DIR_REL', '/yoursubdirectory'); // note starting slash, no trailing slash
shabib1819 replied on at Permalink Reply
I set up a subdomain testwebsites which points to the directory \c5sites\habitat.

My site.php contains the following:
define('BASE_URL', 'http://testwebsites.ksavs.com');
define('DIR_REL', '');

All my files are located in \c5sites\habitat.

I think this is correct. When I've changed these options I got error messages.
kirkroberts replied on at Permalink Reply
kirkroberts

Works for me. What is the issue?
Nornik replied on at Permalink Reply
If you are getting an error that the server can't resolve,not found on this server or something to that effect its normal.

With hosting companies like GD it takes awhile for your newly added subdomain to take effect. It could take 24-48 hrs to work flawlessly however in most cases it takes a few hours.

If you are getting a server error, this could be because of the php.ini file. Delete it as its not needed, GD restricts what you can modify and it really doesn't do much on their servers (used to though, just not anymore).

Last thing, if you transferred your db from localhost to theirs, make sure the database names transferred case-sensitive. Your sql and their sql settings could be different. Meaning look at your GD sql database for the table "atFile" and make sure it looks like I typed it. If it doesn't, your local sql is not case-sensitive.
mnakalay replied on at Permalink Reply
mnakalay
try define('DIR_REL', '/c5sites/habitat'); as suggested above