如何配置CodeIgniter应用程序,以便我可以拥有一个只提供静态(非MVC)html的目录?
我想以下列形式处理一些现有的链接:
http://mysite/contactform/contact.html?queryvars
/ contactform目录中包含子目录(只是一些css,js,images等)的任何内容都不应该通过CodeIgniter管道。处理这个问题的最佳方法是什么? (我通常是Windows开发者,所以说慢点)
我认为必须在重写配置中完成?
routes.php非常基础:
$route['default_controller'] = "home";
从.htaccess重写规则:
# you probably want www.example.com to forward to example.com -- shorter URLs are sexier.
# no-www.org/faq.php?q=class_b
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
RewriteEngine on
RewriteCond $1 !^(index\.php|contact\.php|images|css|js|video|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]
答案 0 :(得分:0)
像这样修改.htaccess:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
告诉mod_rewrite忽略url,如果它是一个实际文件,RewriteCond %{REQUEST_FILENAME} !-d
告诉它忽略它,如果它是一个目录。