我在本地对 CodeIgniter 网络应用程序做了一些工作。它在本地工作正常,但当上传到实时服务器时。
我得到空白页面,当通过 Firebug 检查时,我在 Firebug 的控制台中收到内部服务器错误消息。
我从 2 天开始搜索解决方案,有很多内部服务器错误的答案,例如 .htaccess 可能配置错误或 mod_rewrite 可能未启用等。
这是我到目前为止测试过的内容。
1. mod_rewrite 在 cpanel linux 共享主机服务器上运行良好。还通过创建一个简单的 .htaccess 文件和 test2.php 文件对其进行了测试以确保。
2. .htaccess 对我来说似乎很好,我尝试了许多其他方法但没有用,但是这个 .htaccess 在本地的 wampp 和 xampp 服务器上对我有用。
DirectoryIndex index.php <IfModule mod_rewrite.c>
Options +FollowSymLinks -Indexes RewriteEngine on
#RewriteBase /projects/HouseRentSystem RewriteBase /demos/hrs
# Hide the application and system directories by redirecting the request to index.php
RewriteRule ^(application|system|\.svn) index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L] </IfModule>
<IfModule !mod_rewrite.c>
ErrorDocument 404 index.php </IfModule>
但为了确保,我也尝试删除 .htaccess 并使用 url 中的 index.php 直接访问 Controller 。但没有成功,所以它不是 .htaccess 问题,因为即使使用 index.php 我也会收到内部服务器错误。
3. 测试基本 URL 或数据库设置是否正常。但他们没事。
我很困惑要检查什么?为什么我不能让这个应用程序在我的共享主机上运行?
这是应用程序链接出错的地方。这是一个空白页。控制台中显示错误。
检查了 cPanel 中的错误日志,看是否有任何错误,但它是空的。
更新:
感谢@vinod Tigadi
终于发现了一些问题。
cpanel 的错误日志是空的,但需要检查我的应用程序/项目的根文件夹中的错误日志。
另外我在配置中定义的前缀是
$config['subclass_prefix'] = 'MY_';
而我的主 Controller 文件名为 My_Controller,y
很小。
由于页面空白且没有错误,我不知道此更改,也不知道错误日志文件的位置。
最佳答案
我已经检查了您的其他应用程序,发现除了“hrs”之外,大多数应用程序都可以正常工作。您应该采用循序渐进的方法。
- 首先,重命名codeigniter 自带的index.php 并创建您自己的index.php 或index.html 并尝试访问它。看看能不能用
- 如果仍然无法正常工作,则删除 .htaccess 文件并尝试访问那些新创建的 index 文件并检查
- 如果您能够使用.htaccess 文件访问index 文件,那么CodeIgniter 应该存在一些问题。为此,您应该开始启用 DEBUG 模式
如果您发现 CodeIgniter 存在该问题,请再次恢复 CodeIgniter 的 index.php 并修改您的 config.php 以获取
$配置['log_threshold'] = 4
。然后在 index.php 添加下面的代码error_reporting(E_ALL); ini_set('display_errors', 1);
然后尝试应用程序。
希望通过这个,你应该能够得到错误的详细信息。让我们知道这些信息,以便我们可以进一步帮助您。
关于php - CodeIgniter 应用程序中的 500 内部服务器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30415702/