Codeigniter URL not working without index.php

2019-07-02 00:06发布

I've just set up a new webiste http://www.reviewongadgets.com

But there is a problem with URL rendering

When I put an URL as below it's not working and gives page not found error http://www.reviewongadgets.com/latest-mobile

But it works with http://www.reviewongadgets.com/index.php/latest-mobile

I don't want to show index.php in my URL, it should be http://www.reviewongadgets.com/latest-mobile , can you please suggest me what should I do ?

This is my .htaccess file contents:

RewriteEngine on

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

Config file contents:

$config['base_url'] = "http://www.reviewongadgets.com";
$config['index_page'] = "";

Same type configuration working for my another website

Changed my .htaccess content to

<IfModule mod_rewrite.c>
    RewriteEngine On

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

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

2条回答
可以哭但决不认输i
2楼-- · 2019-07-02 00:47

The most common solution to this problem is usually the missing question mark ? after index.php in .htaccess, so

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

should be

RewriteRule ^(.*)$ index.php?/$1 [L]

E.G. on my Windows XAMPP, I do not need the "?", but in a Linux hosting environment it is usually required.

查看更多
欢心
3楼-- · 2019-07-02 00:49

i aggree with Vlakarados, but i will share my .htaccess setting

RewriteEngine on
RewriteCond $1 !^(index\.php|images|css|js|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php?/$1 [L,QSA]

its work perfectly.

i hope that's work to for your CI website

查看更多
登录 后发表回答