Pretty URLs, mod-rewrite problems

Permalink 8 users found helpful
Installation went fine, and everything is working like a charm, except for the SEO friendly URL's feature. When I activate that setting, and create the .htaccess file in the root of my c5 install like the settings tells me to, it seems to work fine, but clicking any links just reload the current page. For example, on the home page of my site, if I click "Dashboard" it just reloads the home page. Any ideas? Here's my .htaccess just in case: RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L]

 
andrew replied on at Permalink Reply
andrew
You mind adding phpinfo() to your index.php file and posting your url somewhere?
mcrittenden replied on at Permalink Reply
Ngiyabonga replied on at Permalink Reply
Sorry, posted my reply in the wrong place and deleting doesn't work. See my reply below.
andrew replied on at Permalink Reply
andrew
Mike, Did you perhaps just fix this? I noticed the problem you were having, and then all of a sudden it seemed to have fixed itself. Care to share what you did? It looks to me like ORIG_PATH_INFO was how we were expecting it to be formed, and SCRIPT_NAME was not.
andrew replied on at Permalink Reply
andrew
I've found that going to bluetrip.org/login does not work. But going to bluetrip.org/login/ does. Will keep poking.
mcrittenden replied on at Permalink Reply
Nope, I haven't changed anything so far. Thanks for your help, andrew.
mcrittenden replied on at Permalink Reply
Since it seems to work whenever there's a trailing slash, can I just change .htaccess to add a rule which appends / onto any url that doesn't already have one?
andrew replied on at Permalink Reply
andrew
Let's see if that works
andrew replied on at Permalink Reply
andrew
Dealing with servers and their various replies for script name, path info, orig path info, etc.. is so frustrating Try commenting out this line in concrete/libraries/request.php $path = str_replace($_SERVER['SCRIPT_NAME'], '', '/' . $path);
mcrittenden replied on at Permalink Reply
Well I did it, and it seems to have worked. Will that have any effects on anything else? If not, then we're good to go. Thanks a ton for all your help.
andrew replied on at Permalink Reply
andrew
but to be really sure i would login to the dashboard and 1. Create a new user account ( just to make sure that entire process works ) 2. Activate a new theme on your site. If you can do both of those things you should be good to go.
Remo replied on at Permalink Reply
Remo
FYI: I just installed c5 on another provider (dynamic-net.ch). There I also had to remove the line you mentioned!
synlag replied on at Permalink Reply
synlag
Hi Andrew,

actually changed the request.php?

I've tried too activate pretty url's but it ended in this response:
"No input file specified."

Made the changes in request.php but the line you mentioned with str_replace has changed a little bit or?
synlag replied on at Permalink Reply
synlag
ok i tried again but....

1. i added following to my .htaccess:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

i don't need the ifmodule because it's already included.

Ok didn't work, with the result after clicking on a link:

"No input file specified"


2.Contacted my provider
Their code:

#RewriteEngine On
#RewriteBase /
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !(index\.php)
#RewriteRule ^(.*)$ index.php/$1 [R,L]

Now pretty URL is enabled but index.php is still shown.
The answer of my provider why it might not work:

"We could feed a working .htaccess-File, which avoid the "index.php" in your links. Sadly, your CMS does only support clear a redirect and not a direct rewriting, because your script converts the request-uri and is depending on "index.php" when calling."

Works, but index.php is still shown...

Does anyone has a little experience with this and can help?
andrew replied on at Permalink Reply
andrew
Did you paste the code above directly into .htaccess? I'm only asking because it has # symbols in front of each line...and so those lines aren't going to actually do anything, because they're commented out.

If so, what happens when you remove the # symbol? Still get no input file specified?

Is this site public somewhere?
synlag replied on at Permalink Reply
synlag
hi andrew,

no it's not uncommented, it's present and you can visit it here

http://www.concrete5.info
abulka replied on at Permalink Reply
abulka
So what is the official solution for enabling pretty urls on IIS served concrete5 installations that use ISAPI_Rewrite rather than the apache .htaccess technique?

Is it adding some ISAPI_Rewrite lines in (in my case httpd.ini) plus hacking a line in the concrete5 php source code? (and if so, does that cover the latest releases of the code base or just some earlier versions)? Can we get an official radio button in the concrete5 dashboard with the correct instructions for IIS?

Should I wait till this gets sorted out with a new release - hacking the source seems like a workaround?
frz replied on at Permalink Reply
frz
"officially" concrete5 doesnt support windows - that's a cute OS for playing games, not runnin' web servers. <grins>

Practically, I think the answer will most likely be some detailed how-to's under the system requirements page in help, which we plan to update soon.

Certainly if there's something we can change that doesn't impact unix installs I'm all for it. Strikes me that installation support is no fun though, and one of those things where the more you try to cater to all systems, the more time it consumes.
synlag replied on at Permalink Reply
synlag
another try howto handle it

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !(index\.php)
RewriteRule ^(.*)$ index.php?/$1 [L]


and a second one

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !(index\.php)
RewriteRule ^(.*)$ /index.php/$1 [L]


The first one redirects me always to the home of my page, but the address in the browser is without index.php, how it should be.

In the second case the address is shown up without index.php too, but i get the error 'no input file specified.

Any help on this would be a peach ;)
andorra97 replied on at Permalink Reply
Hi,
I think I have the same problems as you have. We both are at domainfactory, right?
php is running in cgi mode there. I figured out one problem is the variable PATH_INFO. It's not set correct. Better is REQUEST_URI as seen here:http://fritzthomas.com/php/34-php-no-input-file-specified-error/...

So I changed the following:
in request.php I added
if (!$path) {$path = Request::parsePathFromRequest('REQUEST_URI');}


Then changed my .htaccess to:
RewriteRule .* index.php [L]


This works now. One problem is still there. When I'm in edit mode the editing div in the top is missing on the main side - only on the main side. Any ideas?

Thanks

Jan
admin replied on at Permalink Reply
Hey, I host also at Domainfactory and your nice little request.php hack worked very well for me, too. Thanks.

Maybe it would be a good idea to have those changes to the next C5 release? Domainfactory is not the only host running PHP in CGI mode.

Greets, Nathanael

Edit: Aww, now the edit-button doesn't work:

"Page Not Found
No page could be found at this address. "

Seems to me that the URLparams aren't passed anymore with this rewrite rule. Can anyone confirm this? Or am I just an idiot?


Edit2:
I could fix my Problem. In addition to the mentioned .htaccess change, I replaced in the request.php:

$path = Request::parsePathFromRequest('ORIG_PATH_INFO');

with

$path = Request::parsePathFromRequest('REDIRECT_URL');
if (!$path) {
$path = Request::parsePathFromRequest('ORIG_PATH_INFO');
}


REDIRECT_URL is IMHO the best solution to get the requested URL (if available), so I use it as the standard method. Now the nice URLs work for me and the edit button, too. Maybe now it's even more a idea to implement this into the core? Can anyone confirm it is working?
eOne replied on at Permalink Reply
Missed few steps :) Now is working.

htacces looks like:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !(index\.php)
RewriteRule .* index.php [L]
</IfModule>


and request.php file
//$path = Request::parsePathFromRequest('ORIG_PATH_INFO');
         $path = Request::parsePathFromRequest('REDIRECT_URL');
         if (!$path) {   $path = Request::parsePathFromRequest('ORIG_PATH_INFO');   }
         //if (!$path) {   $path = Request::parsePathFromRequest('REQUEST_URI');   }
         if (!$path) {   $path = Request::parsePathFromRequest('PATH_INFO');   }
         if (!$path) {   $path = Request::parsePathFromRequest('SCRIPT_NAME');   }
olay replied on at Permalink Reply
olay
I used the above methods to solve this method on a UK host which had the same problems

so the .htaccess was
<IfModule mod_rewrite.c>
   RewriteEngine On
   RewriteBase /
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteCond %{REQUEST_FILENAME} !(index\.php)
   RewriteRule .* index.php [L]
   </IfModule>


and in request.php I replaced

$path = Request::parsePathFromRequest('ORIG_PATH_INFO');


with

$path = Request::parsePathFromRequest('REDIRECT_URL');
if (!$path) {
$path = Request::parsePathFromRequest('ORIG_PATH_INFO');
}



But now i have another problem. Because i use a wordpress blog within my build (mydomianname.com/blog) when i navigate this to that page using an external link in autonav (or just typing in the url for the blog, I actually get a c5 "this page does not exisit page.

EDIT:

I sorted this so that correct .htaccess for me was
<IfModule mod_rewrite.c>
   RewriteEngine On
   RewriteBase /
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteCond %{REQUEST_FILENAME} !-d
   RewriteRule .* index.php [L]
   </IfModule>


Note this is pretty much the same as mod-rewrite provided in the dashboard settings with just the final line altered.
evergreen25 replied on at Permalink Reply
I was having the same problem with mod_rewrite and your steps to modify the .htaccess and /concrete/libraries/request.php files now have the "pretty" urls working for me.

I am also concerned about having to remember to make these fixes every time an update is installed. Is there any chance for these changes to migrate into the core packages, or would that mess up everyone else's installs?

Anyway, thanks again for posting on this.
andrew replied on at Permalink Reply
andrew
I'm not sure about modifying the sample .htaccess that we're include in core (that gets displayed when you click "enable pretty urls" in the dashboard. I've seen enough permutations of this that it makes me want to keep the one we have, and allow people to customize it as you guys in this thread have. Hopefully with enough helpful forum posts like these that'll be pretty easy for people to do. Plus, the .htaccess file isn't affected by upgrades.

The request library, however, is - and we're going to add some support for what's going on in this thread to it. In the next released version of concrete5 I've got the following lines in at the beginning of the Request::get() function:

$path = false;
if (defined('SERVER_PATH_VARIABLE')) {
    $path = Request::parsePathFromRequest(SERVER_PATH_VARIABLE);
}
if (!$path) {
    $path = Request::parsePathFromRequest('ORIG_PATH_INFO');
}
if (!$path) {
    $path = Request::parsePathFromRequest('PATH_INFO');
}
if (!$path) {
    $path = Request::parsePathFromRequest('SCRIPT_NAME');
}
$req = new Request($path);


So you can see, we've added support for a new config definition, that you can add to base.php, "SERVER_PATH_VARIABLE". If you do this:

<?php
define('SERVER_PATH_VARIABLE', 'REDIRECT_URL');
?>


concrete5 will attempt to use what's contained withint the REDIRECT_URL parameter before parsing anything else.

This should be testable in svn right now.
rickychapman replied on at Permalink Reply
rickychapman
Olay -

Thanks again! This got pretty URLs working for me on GoDaddy.
tbock7117 replied on at Permalink Reply
Nice work... Worked on Bluehost for me!!!
sirsyco replied on at Permalink Reply
This worked for me as well with Bluehost as my server provider.

Best!
Abs0lute replied on at Permalink Reply
Abs0lute
I'm running on Bluehost as well and having issues w/ the Pretty URLs. I'm confused as to which solution worked for you. Please clarify.
Thanks!
jameshollister replied on at Permalink Reply
This worked for me on Dreamhost. Thanks!
jameshollister replied on at Permalink Reply
This worked for me on Dreamhost. Thanks!
guythomas replied on at Permalink Reply
guythomas
I thought I would add that changing the two files like eOne's directions above fixed pretty URL's on the iPower host. This was on version 5.3.2
mech7 replied on at Permalink Reply
Thanks this seems to work on Dreamhost too
mech7 replied on at Permalink Reply
Opps seems not.. on every page I get:

Page Not Found
No page could be found at this address.


Does anybody knows how to setup on dreamhost?
mario replied on at Permalink Reply
mario
I find that switching from Fast-CGI to regular CGI for PHP mode under the Site Setup Option in the Control Panel fixes this problem. However, it varies from Dreamhost server to Dreamhost server as to whether you really need to do this.
mech7 replied on at Permalink Reply
Ah thanks... but FAST CGI is preffered for performance.. anyways I solved the problem :)

In concrete 5.3.3.1

/concrete/libraries/request.php

Change line 68:

if (defined('SERVER_PATH_VARIABLE')) {
            $path = Request::parsePathFromRequest(SERVER_PATH_VARIABLE);
         }


To

if (defined('SERVER_PATH_VARIABLE')) {
            $path = Request::parsePathFromRequest(SERVER_PATH_VARIABLE);
         }
         if (!$path) {
            $path = $_SERVER['REQUEST_URI'];
         }

My .htaccess looks like this(but not sure if it matters):

<IfModule mod_rewrite.c>
   RewriteEngine On
   RewriteBase /
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteCond %{REQUEST_FILENAME} !-d
   #RewriteRule ^(.*)$ index.php/$1 [L]
     RewriteRule .* index.php [PT,QSA,L]
</IfModule>



---------------------------------------

Mmmm have problem in the dashboard all links still have index.php.. and the toolbar not show on the frontend x_x
mech7 replied on at Permalink Reply
Getting very close now :p

If add in config/site.php

define('URL_REWRITING_ALL', true);


And then..

in concrete/base.php

Replace:

define('DISPATCHER_FILENAME', 'index.php');


By..

if(!defined(URL_REWRITING_ALL)){
   define('DISPATCHER_FILENAME', 'index.php');
} else {
   define('DISPATCHER_FILENAME', ' ');
}


And same for concrete/libraries/3rdparty/base.php

And then it works... except.. :p there is somewhere a reference to it in javascript files...

Like:
index.php/tools/required/dashboard/sitemap_data.php?mode=full

But cannot find the location yet..
mech7 replied on at Permalink Reply
OK finally everything is working..

request.php

if (!$path) {
$path = $_SERVER['REDIRECT_SCRIPT_URL'];
}

...........

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    #RewriteRule ^(.*)$ index.php/$1 [L]
    RewriteRule .* index.php [PT,QSA,L]
</IfModule>


The rest back to normal and finally seems to work :D dashboard through index.php now.. Dont ask me why lol :P
pepearaya replied on at Permalink Reply
in Dreamhost your .htaccess must be:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

instead of:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>


thats work for me
tommyf replied on at Permalink Reply
Nice job Mech7.

If you ever wan't to sum it op in a tutorial, it wold be fantastic.

I can't find the "concrete/libraries/3rdparty/base.php" that you mention, but everything seems to work.
marcelukparker replied on at Permalink Reply
marcelukparker
Mech7, you are my hero. I was totally unable to figure out the pretty urls on Dreamhost and none of the other solutions was working till I found yours!
webhostaz replied on at Permalink Reply
I wanted to update on this as it seems to be a theme that hasn't really been touched in a while. While setting up a Concrete5 install for a customer on a GoDaddy hosting site I ran across this problem with the SEO/Pretty URL's.

Mech7's solution above worked like a charm *except* or maybe to be more explicit I had to make it look like the following in order to get the pretty urls working AND keep the toolbar on the frontend:

public static function get() {
  static $req;
  if (!isset($req)) {         
    $path = false;
    if (defined('SERVER_PATH_VARIABLE')) {
      $path = Request::parsePathFromRequest(SERVER_PATH_VARIABLE);
    }
    /* Original Location of the fix as I read it */
    if (!$path) {
      $path = Request::parsePathFromRequest('ORIG_PATH_INFO');
    }
    if (!$path) {
      $path = Request::parsePathFromRequest('PATH_INFO');
    }
    if (!$path) {


Hope this might help some other poor unfortunate soul who has a client who insists on GoDaddy hosting...
dmgriffiths replied on at Permalink Reply
Thanks for this -- I'm having a similar problem so will try this. Where should the code you provide be added? Into .htaccess?
Ngiyabonga replied on at Permalink Reply
Had the same problem with kreativmedia.ch. After switching php to fast-cgi pretty-URLs didn't work any more.

For me Oley's solution worked perfectly fine (as far as I can see at the moment) but using Concrete5 5.4.1.1 modifying request.php isn't necessary any more.

Just added this code to config/site.php
define('SERVER_PATH_VARIABLE', 'REDIRECT_URL');


and used this code in .htaccess
<IfModule mod_rewrite.c>
   RewriteEngine On
   RewriteBase /
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteCond %{REQUEST_FILENAME} !-d
   RewriteRule .* index.php [L]
   </IfModule>


Thanks a lot to everybody for your good ideas to solve this problem.
kalapam replied on at Permalink Reply
Adding Config/site.php
the following worked for me!

define('SERVER_PATH_VARIABLE', 'REDIRECT_URL');
Ngiyabonga replied on at Permalink Reply
Had the same problem with kreativmedia.ch. After switching php to fast-cgi pretty-URLs didn't work any more.

For me Oley's solution worked perfectly fine (as far as I can see at the moment) but using Concrete5 5.4.1.1 modifying request.php isn't necessary any more.

Just added this code to config/site.php
define('SERVER_PATH_VARIABLE', 'REDIRECT_URL');


and used this code in .htaccess
<IfModule mod_rewrite.c>
   RewriteEngine On
   RewriteBase /
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteCond %{REQUEST_FILENAME} !-d
   RewriteRule .* index.php [L]
   </IfModule>


Thanks a lot to everybody for your good ideas to solve this problem.
site replied on at Permalink Reply
site
Thanks Ngiyabonga! Your summary worked for me.
SunsetFinance replied on at Permalink Reply
Thanks, this worked for me on Godaddy... Yes, I have to use Godaddy.
scalait replied on at Permalink Reply
scalait
Please check the bug-tracker with bugfix:

http://www.concrete5.org/developers/bugs/5-4-1-1/path_info-problem/...

you can also confirm the bug / bugfix there, so that it get added soon to concrete5 core! ;-)
tobyme replied on at Permalink Reply
Right just to chip in - I am hosted on Kualo and Mech 7 's fix helped me. Its spread across a few posts though so to summarise

1, Edit your site.php file adding:

define('SERVER_PATH_VARIABLE', 'REDIRECT_URL');
define('URL_REWRITING_ALL', true);


2, Edit at line 67 of your request.php file (concrete/libraries/request.php)

replacing the below:
if (defined('SERVER_PATH_VARIABLE')) {
            $path = Request::parsePathFromRequest(SERVER_PATH_VARIABLE);
         }


with......

if (defined('SERVER_PATH_VARIABLE')) {
            $path = Request::parsePathFromRequest(SERVER_PATH_VARIABLE);
         }
         if (!$path) {
            $path = $_SERVER['REQUEST_URI'];
         }


Then put this in your .htaccess file

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule ^(.*)$ index.php/$1 [L]
RewriteRule .* index.php [PT,QSA,L]
</IfModule>
tobyme replied on at Permalink Reply
Damn - i spoke too soon.

It seems the URLS arent actually rewriting properly so that

1, No pages linked out of the sitemap with an link like

www.mysite.com/index.php?cID=65


2, If you navigate to the pages using the menu system and then edit them you now get redirected to the page_not_found page and so I cant actually edit the site now.

I have followed the advice above and read about every post I can find on the rewrite issue - anyone have any ideas or suggestions?

Hope so!!

Thanks

Toby
mischa13 replied on at Permalink Reply
After all this time this core error is not fixed (Last Release 5.4.1.1 November 19, 2010).
At first glance Conrete5 looks like a great Project.
I better stay at Joomla! :-( Too bad.
tobyme replied on at Permalink Reply
FIXED!

mischa - bad luck if you still want to work in joomla. Sorry but C5 is just so much better. If you are looking for crippling errors and bad plugins then joomla surpasses C5 by miles.

Anyway I forgot to post this up - I fixed my error. This is for a UK firm called Kualo:

1, Check the Pretty URLS box in the backend and save, ensuring your htaccess has the standard code:

# -- concrete5 urls start --
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
# -- concrete5 urls end --


2, Enter this into your config/site.php file before the ?>

define('SERVER_PATH_VARIABLE', 'REDIRECT_URL');
define('URL_REWRITING_ALL', true);


3, Create (or use your cpanel to create a rule to make this) a php.ini file at root level that says:

cgi.fix_pathinfo = 0

save.

This is my standard fix for all my sites and it works a gem.

Thanks for all those who posted before.

Toby
mischa13 replied on at Permalink Reply
Hello Toby. Thank you for your quick response and help.
Looking for alternatives to joomla.
Meanwhile i downloaded the actual source from git.
Now the pretty urls working all fine - the sitmap links too.
Mischa
reqon replied on at Permalink Reply
: tobyleeming

I can't edit my website after doing as you described... The redirect works though.. Any suggestions?

Thank you :)

René
arnorotti replied on at Permalink Reply
Tried the steps suggested by tobyleeming but no joy, sadly.

Works fine on my dev Windows server in the office but when I try it with my IIS-based Windows web host (Blue Thunder) using ISAPI_Rewrite for the URL re-writing, it's not working.

Not the end of the world but I hope someone will find an easy solution to this problem - it's obviously causing problems for lots of people.
furehead replied on at Permalink Reply
furehead
*Solution for Strato Webhosting:*
The last line must have some additional \ and / then it works fine (if mod_rewrite is enabled in your webhosting package.

This .htaccess works for me (without any other changes in other files):
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index\.php?/$1 [L]
</IfModule>
Ditso replied on at Permalink Reply
Ditso
I am also suffering with "no input file specified".

As I'm a complete newbie, I cannot even contemplate altering code.

I want the pretty url's to work but they will not on my current host (cloudnext) can anyone suggest a UK hosting company that has concrete5 as a 1 click install that actually works without altering code?

Thanks.
Kwalisite replied on at Permalink Reply
Hi guys,

I used the minimalistic theme for my new page. My coder is on vacation so I thought i could enable pretty urls myself. I couldn't find the file in the root, so just made a new one and put this in it;

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>


When i uploaded with ftp it said there was already a file called .htaccess there, but before i knew it i gave permission to overwrite!

What now?
Kwalisite replied on at Permalink Reply
Oh the site is kwalisite.nl
5fly replied on at Permalink Reply
5fly
Hi All - Good thread - Im nearly there... Got a problem with my godaddy hosting... very similar to everyone elses issues - although...

I tried all the fixes above and the simplest seems to be the amendment to my .htaccess

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index\.php?/$1 [L]
</IfModule>


This works fine, until I try to login /login - the admin page appears, but when I actually login it dies....

goes to /index.php/login/do_login/ and has the dreaded "No input file specified."

Any ideas would be great!
5fly replied on at Permalink Reply
5fly
Just in case anyone is interested...

The simplest fix for this on godaddy hosting anyway.. is to create a new php5.ini in your hosting root and add the cgi.fix_pathinfo = 1

Works a treat!
choppe3766 replied on at Permalink Reply
Hi,
i'm a concrete5 newbie, but for the poeple with an pretty url problem, i've found this solution (on my local sever with PHP5.3.9):

my .htacces looks like this:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /test-concrete5/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]
</IfModule>

All page work with urls likehttp://localhost/test-concrete5/about... AND all pages and functions in the dashborad works too ;-)

Hope thats help.
Greets Chris
choppe3766 replied on at Permalink Reply
Hi,
i'm a concrete5 newbie, but for the poeple with an pretty url problem, i've found this solution (on my local sever with PHP5.3.9):

my -htacces looks like this:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /test-concrete5/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]
</IfModule>

All page work with urls likehttp://localhost/test-concrete5/about... AND all pages and functions in the dashborad works too ;-)

Hope thats help.
Greets Chris
choppe3766 replied on at Permalink Reply
Hi,
i'm a concrete5 newbie, but for the poeple with an pretty url problem, i've found this solution (on my local sever with PHP5.3.9):

my .htacces looks like this:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /test-concrete5/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]
</IfModule>

All page work with urls likehttp://localhost/test-concrete5/about... AND all pages and functions in the dashborad works too ;-)

Hope thats help.
Greets Chris