我在codeigniter HMVC上创建了一个Web应用程序 . 我在本地服务器上测试了它,以下链接完全正常,给我一个登录表单,链接:http://localhost/bird_vision/users/login,我的目录结构就像这个bird_vision / application / modules / users / users.php(users-> module 's name, users.php->controller' s名称) . 现在我使用filezilla将整个"bird_vision"文件夹发布到web . - 将config.php文件中的base_url更改为domain_name - 在.htaccess文件中进行了一些更改
# Customized error messages.
ErrorDocument 404 /index.php
# Set the default handler.
DirectoryIndex index.php
# Various rewrite rules.
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$10 [L,QSA]
</IfModule>
现在,当我在地址栏中写下bird_vision.se/bird_vision/users/login时,它找不到404页面 . 虽然当我输入birdvision.se/bird_vision/welcome时,它给了我欢迎来到codeigniter页面 .
我需要帮助,因为我的所有努力工作都使这个项目受到威胁 . 提前致谢 .
2 回答
我认为问题不在于HMVC,而在于codeigniter 3.0版 . 说到unix(在我的服务器上运行的操作系统),它区分大小写 . 因此,当我尝试访问控制器时,由于区分大小写而无法找到该文件,并且每次都会弹出404 .
我以前的文件夹结构是这样的:
我获得404的链接是www.example.com/users/login
其中链接中的“用户”是控制器名称,在“modules”文件夹下的“controllers”文件夹下,在我的情况下命名为users.php,“login”是控制器内部的功能 .
我所要做的就是更改模块和控制器名称的第一个字母的大小写 . 现在我的目录看起来像
注意:Users模块和Users控制器中的大写“U” .
我用来访问用户控制器的网址是:www.example.com/ U sers / login
我又回来了 .
你救了我 Zeeshan Cornelius
我奋力超过30分钟终于让它发挥作用 . 非常感谢