【发布时间】:2015-08-05 14:21:28
【问题描述】:
我在 CodeIgniter Web 应用程序上做了一些本地工作。它在本地运行良好,但在上传到实时服务器时。
我得到空白页,当通过 Firebug 检查时,我在 Firebug 的控制台中收到内部服务器错误消息。
我正在寻找两天后的解决方案,并且有很多内部服务器错误的答案,例如 .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 直接访问控制器。但那里没有成功,所以它不是 .htaccess 问题,即使使用 index.php 我也会收到内部服务器错误。
3. 测试基本 URL 或数据库设置是否可能不正确。但他们没事。
我很困惑要检查什么?为什么我不能让这个应用程序在我的共享主机上运行?
这是应用程序链接出错。这是一个空白页。控制台显示错误。
检查cPanel中的错误日志,看看是否有任何错误,但它是空的。
更新:
感谢@vinod Tigadi
终于发现了一些问题。
cpanel 的错误日志为空,但需要查看我的应用程序/项目根文件夹中的错误日志。
另外我在配置中定义的前缀是
$config['subclass_prefix'] = 'MY_';
而我的主控制器文件名为 My_Controller,y 很小。
由于空白页且没有错误且不知道错误日志文件的位置,我无法知道此更改。
【问题讨论】:
-
不要试图猜测错误是什么。检查错误日志。它应该告诉你发生了什么。
-
我检查了cpanel中的错误日志,它是空的:(
-
是否启用了 csrf_protection?
-
@RejoanulAlam 在我的配置文件中没有设置为
FALSE.. -
如果您收到 500 错误,则应该转到某个错误日志文件。我猜你只是看错了。我已经很多年没有使用 cpanel 了,但我似乎记得当发生 php 错误时,它会将一个名为
error_log的文件添加到您的 Web 根目录中的目录中。检查一下。如果没有,请参阅stackoverflow.com/questions/8955411/…。如果您仍然无法获得它,请联系您的房东,让他们为您指明正确的方向。
标签: php apache .htaccess codeigniter mod-rewrite