2
votes

I am new in CodeIgniter. I setup CI in my localhost Eg. localhost/MyProjects/CodeIgniter/welcome/index

I can able to remove the index.php from the url & I also completed the .html suffix So, I can able to visit localhost/MyProjects/CodeIgniter/welcome/index.html & Its working properly.

So I am using my a tag like this:

<a href="<?php echo base_url(); ?>welcome/register.html">Register</a>

But, I dont want to use the .html in my link manually.

have any solution to show my visitor .html suffix automatically Eg. localhost/MyProjects/CodeIgniter/welcome/index.html Or localhost/MyProjects/CodeIgniter/welcome/about.html Etc

Here is my htaccess http://pastebin.com/cXUFjvbp

3

3 Answers

6
votes

Just edit url_suffix in config.php .....

$config['url_suffix'] = '.html';

Use site_url()

<!-- No need .html -->
<a href="<?php echo site_url('welcome/register'); ?>">Register</a>
<!-- <a href="http://domain/welcome/register.html">Register</a> -->

Or anchor()

// No need .html
echo anchor('welcome/register', 'Register');
// <a href="http://domain/welcome/register.html">Register</a>

Note : Dont forget to load URL helper with $this->load->helper('url');.

3
votes

Change your config.php file

$config['url_suffix'] = '.html';
1
votes

Just redefine the base_url function or make a new one. Look at the source of base_url method

function _base_url($path = NULL) {
  return base_url() . $path . '.html';
}