0

我想从代码点火器 URL中删除index.php ,我创建了.htaccess文件并将其存储在与 index.php 平行的应用程序文件夹中,并且还删除

$config['index_page'] = '';

来自 config.php。

.htaccess 文件中的代码不起作用:

RewriteEngine on
RewriteCond $1 !^(index\.php|images|css|js|robots\.txt)
RewriteRule ^(.*)$ /WCPM/index.php/$1 [L] 

该项目的网址是:

localhost/WCPM/index.php

注意请不要将此问题标记为重复,因为我已经尝试了很多相同的解决方案,但它们都不适合我,所以最后我在这里问这个问题以获得解决方案

4

5 回答 5

1

在 Config.php 中更改如下

$config['index_page'] = '';
$config['base_url'] = 'http://localhost/WCPM/';

并创建.htaccess文件,如

RewriteEngine on
RewriteCond $1 !^(index\.php|[WCPM])
RewriteRule ^(.*)$ /WCPM/index.php/$1 [L]

并将其保存在根文件夹 [WCPM] 中,即应用程序文件夹附近。

有关更多详细信息,请参阅 CI 手册 @ http://ellislab.com/codeigniter/user-guide/general/urls.html

于 2013-06-29T09:50:37.380 回答
0

在 apache 中启用 mod_rewrite 模块。

如果这不起作用或 mod_rewrite 已经启用,试试这个

<IfModule mod_rewrite.c>
RewriteEngine On

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

</IfModule>
于 2013-06-29T06:51:07.663 回答
0

首先,更改文件中的以下setting内容config

$config['index_page'] = '';

然后,用.htaccess以下代码替换位于项目根文件夹而不是应用程序文件夹中的文件。

RewriteEngine on
RewriteCond $1 !^(index\.php|public|\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?$1
于 2013-06-29T06:53:14.973 回答
0

有一篇完整的文章在:

http://www.web-and-development.com/codeigniter-remove-index-php-minimize-url/#remove-index-php

于 2013-06-29T07:40:37.517 回答
0
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|imgs)
RewriteRule ^(.*)$ index.php/$1 [L]  
RewriteRule ^media/imatges/([0-9]+)/([A-Za-z0-9-]+).jpg?$ imgs/$1  [T=image/jpeg,L]
<Files "index.php">
AcceptPathInfo On
</Files>

这是放在 .htaccess 文件开头的全部推荐代码

于 2013-06-29T12:33:43.430 回答