我现在已经摸不着头脑了两天,以为一些专家建议可以帮助我。
我有一个我需要维护的CodeIgniter应用程序(版本2.X),这是我第一次使用它。该应用程序的结构是:
myApp
application
cache
certs
config
controllers
...
modules
moduleA
controllers
models
views
moduleB
controllers
models
views
...
third_party
views
cgi-bin
...
system
themes
uploads
我安装了WAMP,并将整个myApp放在c:\ wamp \ www下。我做的另一个步骤:
1)改变了Apache的'listen'端口,因为我也在我的机器上运行IIS。
2)启用了Apache重写模块。
3)在<Directory .../>
部分设置'all'和'all granted':
<Directory "c:/wamp/www/">
Options Indexes FollowSymLinks
AllowOverride all
Require all granted
</Directory>
4)在'database.php'配置中正确设置数据库名称。
5)已验证.htaccess文件位于myApp文件夹下,.htaccess的内容为:
RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
6)在'routes.config'中,默认控制器为:$ route ['default_controller'] =“login”;
通过这些步骤,我能够在本地托管此应用程序并工作一段时间。但是,我不得不更改我的Windows用户密码,重新启动计算机后,我突然收到404错误。
我可以通过http://localhost:port/myApp/index.php(或http://localhost:port/myApp)浏览到“登录”页面,但是从那里我只收到404错误消息。我可以浏览完整的网址:
http://localhost:port/mpApp/index.php/login/forgotpassword - 无障碍 http://localhost:port/myApp/login/forgotpassword - 404错误
现在,我不确定它是否与我的Windows用户密码更改有关,但这个问题变成了巫毒,因为我发誓我可以工作并在本地浏览所有页面。我还重新安装了WAMP两次并重复了 上面的过程只是为了确保我做得对。
有人能想到我在这里缺少的东西吗?
答案 0 :(得分:1)
发现问题,至少有一个问题对我有用:
在config.php(在... myApp \ application \ config下)我将$ config ['uri_protocol']的值从'AUTO'更改为'PATH_INFO'。