Nic*_*iwi 6 php .htaccess codeigniter
我有3台服务器,一台localhost apache服务器,一台测试远程服务器和生产实时服务器.
我在所有3个上都安装了相同的codeigniter和站点设置,并且在localhost和测试服务器上没有'index.php'的路由工作100%.但是,在生产服务器上,无论URL显示只显示主页(通过默认控制器),似乎除了默认路由规则外,所有路由规则都被忽略.
但是,如果在URL中添加了index.php,那么它将按预期工作.
例如,如果生产站点上的URL为:'www.mysite.com/information',则加载的内容将构成默认控制器.
但是当生产站点上的URL为:'www.mysite.com/index.php/information'时,加载的内容来自'信息'控制器.
这是我的htacess文件的内容:http://pastebin.com/cDaZVJ8A
这是我的路由配置文件:http://pastebin.com/7Ewc2bwN
我的$ config ['index_page']设置为空.
我真的不知道为什么它不起作用,在codeigniter本身的所有服务器上的相同设置,并且mod_rewrite IS在生产服务器上工作.
我不知道该怎么办,我怎么能找出什么是错的?
当人们将codeigniter安装从一个环境移动到另一个环境时,这是一个非常常见的问题.我不知道它为什么会出现,可能是服务器操作系统或apache设置的差异,但解决方案通常是?在.htaccess文件中为index.php 添加一个问号到RewriteRule.
旧:
RewriteRule ^(.*)$ index.php/$1 [L]
Run Code Online (Sandbox Code Playgroud)
新:
RewriteRule ^(.*)$ index.php?/$1 [L]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2396 次 |
| 最近记录: |