CodeIgniter provides the option to use Search Engine friendly URL’s in your application. Search Engine friendly URL’s let’s spiders index your site better and are visually more attractive.
index.php
[sourcecode]
$config['index_page'] = ”;
[/sourcecode]
[sourcecode]
# Set the default file for indexes
DirectoryIndex index.php
# mod_rewrite rules
RewriteEngine on
# The RewriteBase of the system (if you are using this system in a sub-folder).
# RewriteBase /SubFolderName/
# This will make the site only accessible without the “www.”
# (which will keep the subdomain-sensive config file happy)
# If you want the site to be accessed WITH the “www.”
# comment-out the following two lines.
# RewriteCond %{HTTP_HOST} ^www\.site\.com$ [NC]
# RewriteRule ^(.*)$ http://site.com/$1 [L,R=301]
# If a controller can’t be found – then issue a 404 error from PHP
# Error messages (via the “error” plugin)
# ErrorDocument 403 /index.php/403/
# ErrorDocument 404 /index.php/404/
# ErrorDocument 500 /index.php/500/
# Deny any people (or bots) from the following sites: (to stop spam comments)
# RewriteCond %{HTTP_REFERER} nienschanz\.ru [NC,OR]
# RewriteCond %{HTTP_REFERER} porn\.com
# RewriteRule .* – [F]
# Note: if you are having trouble from a certain URL just
# add it above to bock all visitors from that site.
# Or you can also uncomment this if you know the IP:
# Deny from 192.168.1.1
# If the file is NOT the index.php file
RewriteCond %{REQUEST_FILENAME} !index.php
# Hide all PHP files so none can be accessed by HTTP
RewriteRule (.*)\.php$ index.php/$1
# If the file/dir is NOT real go to index
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [QSA,L]
# If mod_rewrite is NOT installed go to index.php
ErrorDocument 404 index.php
[/sourcecode]
mod_rewrite and the Index page
Before anything else, make sure you have mod_rewrite enabled on your server. Once that’s taken care of, edit your index.php file and set $config['index_page'] to blank.index.php
[sourcecode]
$config['index_page'] = ”;
[/sourcecode]
Creating the .htaccess file
Go to your root directory, create a file called “.htaccess” and paste the following.[sourcecode]
# Set the default file for indexes
DirectoryIndex index.php
# mod_rewrite rules
RewriteEngine on
# The RewriteBase of the system (if you are using this system in a sub-folder).
# RewriteBase /SubFolderName/
# This will make the site only accessible without the “www.”
# (which will keep the subdomain-sensive config file happy)
# If you want the site to be accessed WITH the “www.”
# comment-out the following two lines.
# RewriteCond %{HTTP_HOST} ^www\.site\.com$ [NC]
# RewriteRule ^(.*)$ http://site.com/$1 [L,R=301]
# If a controller can’t be found – then issue a 404 error from PHP
# Error messages (via the “error” plugin)
# ErrorDocument 403 /index.php/403/
# ErrorDocument 404 /index.php/404/
# ErrorDocument 500 /index.php/500/
# Deny any people (or bots) from the following sites: (to stop spam comments)
# RewriteCond %{HTTP_REFERER} nienschanz\.ru [NC,OR]
# RewriteCond %{HTTP_REFERER} porn\.com
# RewriteRule .* – [F]
# Note: if you are having trouble from a certain URL just
# add it above to bock all visitors from that site.
# Or you can also uncomment this if you know the IP:
# Deny from 192.168.1.1
# If the file is NOT the index.php file
RewriteCond %{REQUEST_FILENAME} !index.php
# Hide all PHP files so none can be accessed by HTTP
RewriteRule (.*)\.php$ index.php/$1
# If the file/dir is NOT real go to index
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [QSA,L]
# If mod_rewrite is NOT installed go to index.php
ErrorDocument 404 index.php
[/sourcecode]
No comments:
Post a Comment