问题
I made a website with CodeIgniter and I am currently hosting it with 1and1. During development, everything looked golden. Only if all hosts were as reliable as localhost.
I am looking to get the PHP error logs from the site. Unfortunately, 1and1 does not allot access to their Apache logs. How can I get error logs? Debugging fatal errors is a pain without logs.
What I have tried?
- The custom error logging function
- Modifying the local PHP.ini to allow/log errors
- Used php5 by adding the necessary
AddHandler
andAddType
clauses to my.htaccess
Still the problem is not fixed.
Update (October 1st)
Still trying to fix my issue, I have narrowed it down to the PHP ActiveRecord spark. The models which inherit from PHP ActiveRecord are not instantiated. PHP ActiveRecord's ActiveRecord\Model
class is instantiated. I did this using the following snippet
$class_name = "ActiveRecord\Model";
echo in_array($class_name, get_declared_classes());
which returns a 1
for ActiveRecord\Model
and 0
for MyActiveRecordModel
.
Supposedly, there is some friction between the ActiveRecord spark and and 1and1—my guess, DB problems. Here comes the interesting part. Using the ActiveRecord library provided by CodeIgniter works like a charm. I presume PHP ActiveRecord is printing some errors of what is going wrong. This is what I want to get from 1and1.
Update (October 8th)
If I manually require MyActiveRecordModel
, the code snippet that checks for definition of classes claims ActiveRecord\Model
is not defined.
回答1:
This issue is solved by changing the naming conventions. The file which had MyActiveRecordModel
was named myActiveRecordModel. This did not allow CodeIgniter to autoload the required class.
I got this tip from a list of steps for upgrading CodeIgniter to version 3.0.0—although, I am on version 2.1.3
来源:https://stackoverflow.com/questions/19075807/codeigniter-on-1and1-error-reporting