CodeIgniter Forums
CodeIgniter 1.7.2 + XAMPP 1.7.3 + .htacess problems - Printable Version

+- CodeIgniter Forums (https://forum.codeigniter.com)
+-- Forum: Archived Discussions (https://forum.codeigniter.com/forum-20.html)
+--- Forum: Archived General Discussion (https://forum.codeigniter.com/forum-21.html)
+--- Thread: CodeIgniter 1.7.2 + XAMPP 1.7.3 + .htacess problems (/thread-28975.html)

Pages: 1 2 3


CodeIgniter 1.7.2 + XAMPP 1.7.3 + .htacess problems - El Forum - 03-26-2010

[eluser]nickstaroba[/eluser]
I've started from a fresh install of both XAMPP and CI.

CI is installed directly into htdocs and CI's index.php is located there. The config.php has been set up with these changes:

Code:
$config['base_url']    = "http://localhost/";
$config['index_page'] = "";

All else in config.php is default.

I have created the blog.php file as described here:
http://ellislab.com/codeigniter/user-guide/general/controllers.html

http://localhost/ shows the welcome page.
http://localhost/index.php/blog shows "Hello World!"

XAMPP's httpd.conf file has been modified so that all instances of AllowOverride are set to:
Code:
AllowOverride all

This line was already uncommented so it should be active:
Code:
LoadModule rewrite_module modules/mod_rewrite.so

I've created a .htaccess file with the following code from
http://ellislab.com/codeigniter/user-guide/general/urls.html

Code:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

This file has been placed in htdocs as well as the system folder and I have restarted Apache and even rebooted my PC (*irishAccent "did you try turning it off and on again?"). But still show a 404 error when accessing http://localhost/blog/.

I have tried many other various configurations that I have seen around this site and others to no avail. My copy-paste monkeying around has not solved this problem.

Assistance would be greatly appreciated as well as any references to study.

Thanks!


CodeIgniter 1.7.2 + XAMPP 1.7.3 + .htacess problems - El Forum - 03-26-2010

[eluser]Raphael Passini[/eluser]
You have to change one little thing in the config.php ( /path/to/ci/system/application/config.php )

Code:
/*
|--------------------------------------------------------------------------
| URI PROTOCOL
|--------------------------------------------------------------------------
|
| This item determines which server global should be used to retrieve the
| URI string.  The default setting of "AUTO" works for most servers.
| If your links do not seem to work, try one of the other delicious flavors:
|
| 'AUTO'            Default - auto detects
| 'PATH_INFO'        Uses the PATH_INFO
| 'QUERY_STRING'    Uses the QUERY_STRING
| 'REQUEST_URI'        Uses the REQUEST_URI
| 'ORIG_PATH_INFO'    Uses the ORIG_PATH_INFO
|
*/
$config['uri_protocol']    = "REQUEST_URI";

Works fine here. I'm using Ubuntu + AMP.


CodeIgniter 1.7.2 + XAMPP 1.7.3 + .htacess problems - El Forum - 03-26-2010

[eluser]nickstaroba[/eluser]
Windows XP here...not sure if that matters.

I tried your suggestion but it results in:

http://localhost/blog/ 403 error

http://localhost/index.php/blog/ shows the CI 404 page


CodeIgniter 1.7.2 + XAMPP 1.7.3 + .htacess problems - El Forum - 03-26-2010

[eluser]Raphael Passini[/eluser]
Try the others options, like QUERY_STRING!
When i arrive in home i'll look at my config, there i'm using WINDOWS 7.

[]'s


CodeIgniter 1.7.2 + XAMPP 1.7.3 + .htacess problems - El Forum - 03-26-2010

[eluser]nickstaroba[/eluser]
No luck. I get various effects from the different options, but not showing the necessary page on http://localhost/blog/


CodeIgniter 1.7.2 + XAMPP 1.7.3 + .htacess problems - El Forum - 03-26-2010

[eluser]Raphael Passini[/eluser]
Let me see if i understood your directory structure:

Code:
||- htdocs
    |--> system
    |--> user_guide
    |--> index.php

That's it?


CodeIgniter 1.7.2 + XAMPP 1.7.3 + .htacess problems - El Forum - 03-26-2010

[eluser]nickstaroba[/eluser]
That's correct


CodeIgniter 1.7.2 + XAMPP 1.7.3 + .htacess problems - El Forum - 03-26-2010

[eluser]Raphael Passini[/eluser]
What about your general .htaccess file?

Code:
<Directory "/some/absolute/path/htdocs">
...
Options FollowSymLinks
AllowOverride FileInfo
...  
</Directory>

Is there inside?
Check if you read this


CodeIgniter 1.7.2 + XAMPP 1.7.3 + .htacess problems - El Forum - 03-28-2010

[eluser]InsiteFX[/eluser]
Try adding RewriteBase \

Also I would create a directory under htdocs like public_html or whatever.

Edit you index.php file make sure that it's pointing to the system and application
folders.

Enjoy
InsiteFX


CodeIgniter 1.7.2 + XAMPP 1.7.3 + .htacess problems - El Forum - 03-31-2010

[eluser]nickstaroba[/eluser]
Ok, so I started over with this because XAMPP 1.7.3 was giving me errors from the control panel. One thing I didn't note is that I'm only trying to get this set up on my local environment.

I installed a fresh copy of XAMPP 1.7.0 and created the directory "www" under htdocs as suggested above. I've put the install of CI into this directory so it's localhost/www/index.php, localhost/www/systems, etc.

Again, the config.php is default but for the following two lines:

Code:
$config['base_url']    = "http://localhost/www/";
$config['index_page'] = "";

I followed the tutorial here:
http://codeigniter.com/wiki/mod_rewrite/



I tried the following in the .htaccess file located in "www":

Code:
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /www/

    #Removes access to the system folder by users.
    #Additionally this will allow you to create a System.php controller,
    #previously this would not have been possible.
    #'system' can be replaced if you have renamed your system folder.
    RewriteCond %{REQUEST_URI} ^system.*
    RewriteRule ^(.*)$ /index.php?/$1 [L]
    
    #When your application folder isn't in the system folder
    #This snippet prevents user access to the application folder
    #Submitted by: Fabdrol
    #Rename 'application' to your applications folder name.
    RewriteCond %{REQUEST_URI} ^application.*
    RewriteRule ^(.*)$ /index.php?/$1 [L]

    #Checks to see if the user is attempting to access a valid file,
    #such as an image or css document, if this isn't true it sends the
    #request to index.php
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>

<IfModule !mod_rewrite.c>
    # If we don't have mod_rewrite installed, all 404's
    # can be sent to index.php, and everything works as normal.
    # Submitted by: ElliotHaughin

    ErrorDocument 404 /index.php
</IfModule>

and

Code:
RewriteEngine on
RewriteBase /www/
RewriteCond $1 !^(index\.php|images|scripts|css|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]



These are the settings I've tried in httpd.conf

Code:
<Directory "C:/Documents and Settings/Nick Staroba/My Documents/My Work/Web Design/X2/htdocs">
Options Indexes Includes FollowSymLinks MultiViews
AllowOverride AuthConfig FileInfo
Order allow,deny
Allow from all
</Directory>

and

Code:
<Directory "C:/Documents and Settings/Nick Staroba/My Documents/My Work/Web Design/X2/htdocs">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>


Still getting errors 500 and 404 errors depending on which files I'm using...

Is http://httpd.apache.org/docs/2.2/rewrite/a good place to study up on this?