在config.php
下,我有:
$config['log_threshold'] = 4;
$config['log_path'] = '/home/myaccount/logFilesFolder';
在index.php中,我有:
error_reporting(E_ALL);
唯一的方法就是把这个目录修改为rwx(777),这对我来说是不正确的,而且它也没有记录所有的错误。
在我的本地/dev环境中,它似乎可以工作,但在我的生产服务器上,没有任何东西被记录。我似乎不知道为什么。
在config.php
下,我有:
$config['log_threshold'] = 4;
$config['log_path'] = '/home/myaccount/logFilesFolder';
在index.php中,我有:
error_reporting(E_ALL);
唯一的方法就是把这个目录修改为rwx(777),这对我来说是不正确的,而且它也没有记录所有的错误。
在我的本地/dev环境中,它似乎可以工作,但在我的生产服务器上,没有任何东西被记录。我似乎不知道为什么。
5条答案
按热度按时间bvn4nwqk1#
***配置设置中的日志文件名上方需要有一个尾随的“/"***,以确保Web服务器进程对该目录具有可写访问权限。
vx6bjr1n2#
将日志所有者和组更改为您的live web服务器正在运行的所有者/组,给予它写权限,它应该工作。我认为在您的本地/dev服务器中,您的CI文件夹是由您拥有的,这就是为什么您需要将其chmod为777以使其工作。
5hcedyr03#
要保存日志文件的目录必须是可写的。
js4nwp544#
我尝试了很多解决方案,最后对我有效的是:
打开system/libraries/Log.php并更改以下行;设置以下项的值:$this-〉log_path指向一个可写的目录,最好是home目录,这样就不会有权限问题。如果你想更改文件名,搜索变量$filepath并更改名称。例如:日志路径= '/log';触摸/记录/重新启动网络服务器。日志将开始到来。
我已经尝试了很多其他的选择,没有一个工作,这不是整洁的方法,但至少我可以看到我的日志现在。
dvtswwa35#
我的Codeigniter 4项目也遇到了同样的问题。日志在我的本地窗口机器上成功创建,但在远程Linux机器上没有创建。我使用了一个自定义路径在“app”文件夹下生成日志文件。所以我所做的是将我的config/Logger. php文件中的设置改回
并在writeable/logs文件夹下创建日志文件。