Codeigniter从浏览器URL中删除index.php

时间:2016-01-29 08:19:42

标签: php .htaccess codeigniter url iis-8.5

我想创建一个应用网址' http://example.com'。但是输入网址会显示“HTTP错误403.14 - 禁止访问”。当我插入' index.php'在最后一个网址上,如{' http://example.com/index.php'登录页面在浏览器中呈现 我改变了

$config['base_url'] = 'http://example.com';

$config['index_page'] = '';

$config['uri_protocol'] = 'REQUEST_URI';

在config.php文件中。然后我将.htaccess文件与应用程序和系统文件夹一起放在codeigniter根文件夹中。然后在我用

编码的.htaccess文件中
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L] 
</IfModule>

我只想删除&#39; index.php&#39;来自网址。我正在使用IIS 8.5 Web服务器。

3 个答案:

答案 0 :(得分:1)

  htaccess file
  RewriteEngine on
  RewriteCond $1 !^(index\.php|resources|robots\.txt)
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ index.php?/$1 [L]

  my site is working http://demo.crowdfundingscript.com/ 
  config file
  $config['uri_protocol']   = 'AUTO';
   $config['index_page'] = '';

答案 1 :(得分:0)

替换此行: -

$config['uri_protocol'] = 'REQUEST_URI';
to
$config['uri_protocol'] = 'AUTO';

也会更改您的基本网址。

$config['base_url']    = 'http://'.$_SERVER['HTTP_HOST'].'/';

写下您的规则如下:

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

希望它对您有用:)

答案 2 :(得分:0)

在config.php中,

删除$ config ['index_page']

中的index.php

例如:

$ config ['index_page'] ='';