我使用本地Windows XAMPP服务器进行开发,我的项目正在使用XAMPP。
几周前我重新安装了操作系统。我安装了XAMPP(相同版本),我将htdocs从默认c:\xampp\htdocs
移动到e:\htdocs
。我对移动的htdocs的XAMPP没有任何问题(其他非codeigniter项目工作正常)。
今天我将应用程序从生产服务器复制到我的localhost,但它无法正常工作。
当我尝试在浏览器中打开时:http://localhost/myprojectfolder
即时空白页。
清理本地Windows上的CodeIgniter安装XAMPP正常工作(但是干净安装不使用.htaccess)。
项目在生产Web服务器上正常运行,其中包含.htaccess文件:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /myprojectfolder
### Canonicalize codeigniter URLs
# If your default controller is something other than
# "welcome" you should probably change this
# RewriteRule ^(welcome(/index)?|index(\.php)?)/?$ / [L,R=301]
# RewriteRule ^(.*)/index/?$ $1 [L,R=301]
# Removes trailing slashes (prevents SEO duplicate content issues)
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ $1 [L,R=301]
# Removes access to the system folder by users.
# Additionally this will allow you to create a System.php controller,
# previously this would not have been possible.
# 'system' can be replaced if you have renamed your system folder.
# RewriteCond %{REQUEST_URI} ^system.*
# RewriteRule ^(.*)$ /index.php/$1 [L]
# Checks to see if the user is attempting to access a valid file,
# such as an image or css document, if this isn't true it sends the
# request to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>
<IfModule !mod_rewrite.c>
# Without mod_rewrite, route 404's to the front controller
ErrorDocument 404 /index.php
</IfModule>
我不记得了,我为localhost设置了单独的.htaccess文件。如果我有 - 它被生产服务器上的文件覆盖。
项目中使用的MySQL数据库在两个服务器上都是相同的(名称,用户,密码,结构等)。
我的$config['uri_protocol']
设置为AUTO
,并且正在使用AUTO
处理XAMPP。
htdocs
中的文件权限没问题(启动httpd.exe服务的用户可以在那里读写)。
我的路线:
$route['default_controller'] = "home";
$route['admin'] = 'admin/start';
$route['404_override'] = '';
有什么想法吗?