Home Articles

CodeIgniter:使用.htaccess重写URL

Asked
Viewed 1438 times
1

我使用带有多个控制器的CodeIgniter构建了一个应用程序

我希望应用程序URL通过使用.htaccess文件来查看"pretty" .
除了在"application/config/routes.php"文件中设置为默认值的控制器外,所有控制器似乎都能正常工作

我的.htaccess文件如下所示:

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

我也像这样设置了config.php文件

$ config ['index_page'] ='';

在服务器日志中,我收到如下错误:

[星期五11月29日10:32:11 2013] [错误] [客户端...] mod_security:过滤请求的POST有效负载,但有效负载不可用[hostname“app . * . nl”] [uri“/ user / profile “]

在开发服务器上,一切工作都很好,但自从应用程序在 生产环境 服务器上以来,它不能与.htaccess文件一起使用 .

1 Answer

  • 0
    AddDefaultCharset UTF-8
    
    RewriteEngine On
    
    RewriteBase /
    
    RewriteCond %{REQUEST_URI} ^codeigniter.*
    RewriteRule ^(.*)$ /index.php?/$1 [L]
    
    RewriteCond %{REQUEST_URI} ^application.*
    RewriteRule ^(.*)$ /index.php?/$1 [L]
    
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?/$1 [L]
    

Related