Can someone help me with this? I'm feeling like I've been hitting my head against a wall for over 2 hrs now.
I've got Apache 2.2.8 + PHP 5.2.6
installed on my machine and the .htaccess
with the code below works fine, no errors.
RewriteEngine on RewriteCond $1 !^(index\.php|css|gfx|js|swf|robots\.txt|favicon\.ico) RewriteRule ^(.*)$ /index.php/$1 [L]
The same code on my hosting provider server gives me a 404 error code and outputs only: No input file specified.
index.php is there. I know they have Apache installed (cannot find version info anywhere) and they're running PHP v5.2.8.
I'm on Windows XP 64-bit
, they're running some Linux
with PHP
in CGI/FastCGI
mode. Can anyone suggest what could be the problem?
PS. if that's important that's for CodeIgniter
to work with friendly URLs.
Update1:
mod_rewrite
is installed and on.
What I've noticed is that if I change in RewriteRule
to /index.php?$1
(question mark instead of forward slash) it goes into an infinite loop. Anyway, using question mark isn't an option as CodeIgniter
(required) is not going to work this way.
Homepage also works when I request index.php directly: example.com/index.php
I'm starting to think it might be apache thinking that once the trailing slash is added it is not a file anymore but a folder. how to change such a behaviour?
Update 2:
I was wrong.
Apache handles these URLs correctly.
Requesting http://example.com/index.php/start/
(homepage) or any other valid address works.
Seems that Apache
is just not forwarding the query for some reason.
Update 3:
Just to be clear what I'm trying to achieve.
I want to rewrite addresses like that:
http://www.example.com/something/ => http://www.example.com/index.php/something/ http://www.example.com/something/else/ => http://www.example.com/index.php/something/else/
This error is usually produced by incorrect directives in either the php. ini or the . user. ini files for your website.
Mostly, the No input file specified error shows up while loading the website after a migration. This problem can be easily resolved by tweaking the PHP version, correcting . htaccess file, disabling faulty plugins and so on.
I was beating my head up against this as well. I'm also installing Code Igniter.
The goocher was no RewriteBase. Here's my .htaccess:
DirectoryIndex index.php RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond $1 !^(index\.php|robots\.txt) RewriteRule ^(.*)$ index.php?/$1 [L]
The Problem
I encountered a similar problem just now and unfortunately none of the answers in this thread helped:
Zend Framework was giving out "No input file specified.", but:
RewriteBase /
did not helpSo the answer came from the following site: https://ellislab.com/forums/viewthread/55620/P15 [dead link] (even though the host is not DreamHost).
The Solution
Apparently all you need to do is replace this line:
RewriteRule ^(.*)$ index.php/$1
With this:
RewriteRule ^(.*)$ index.php?/$1
Problem solved.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With