使用htaccess

时间:2016-10-04 10:27:16

标签: php .htaccess codeigniter

我在域名后面加了一个额外的斜杠,例如http://localhost/folder//project/list_all

以下是用于从url中删除index.php的htaccess代码 我正在使用codeigniter

RewriteEngine On

RewriteRule ^index.php/(.*)$ /$1 [R=302,L]

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

在上面的代码之后添加了一个额外的斜杠。

我该如何解决?

//full code

controller/project

public function list_all() {
  //code....
)
//----------------------------

routes.php

$route['default_controller'] = 'home';
//--------------------------------

config.php
$config['base_url'] = 'http://localhost:8080/folder';
$config['index_page'] = '';
$config['uri_protocol'] = 'REQUEST_URI';
//--------------------------------------------------

//controller home.php 
public function home() {
   //call model load data
   //call view
}

1 个答案:

答案 0 :(得分:0)

你的代码似乎有些东西两次,试试这个:

<IfModule mod_rewrite.c>

    RewriteEngine on

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

</IfModule>

您的htaccess必须位于索引文件

的位置