Zho*_*ter 4 apache permissions logging config
因此,我最近按照此处规定的说明下载了Apache服务器及其所有文件(httpd,apr,apr-util,pcre):http : //httpd.apache.org/docs/2.4/install.html
但是,设置后,当我尝试启动位于我的usr / local / bin /中的Apache服务器时,出现以下消息提示我:
[allen@allen-lnx ~]$ /usr/local/bin/apachectl start
(13)Permission denied: AH00091: httpd: could not open error log file /usr/local/logs/error_log.
AH00015: Unable to open logs
Run Code Online (Sandbox Code Playgroud)
经过一番研究,我发现我需要编辑我的httpd.conf文件,之前已经这样做了,以允许使用正确的ServerName和Listen选项。但是,我不确定如何编辑conf文件以允许访问“ logs”目录。
值得注意的是,该命令将在我使用“ sudo”命令时运行,但我不希望总是使用它,因为这似乎可以解决。
任何帮助,将不胜感激。谢谢!
编辑:我实际上已经注意到我可能有两个httpd.conf文件,事实证明这有点麻烦。另一个位于我的根目录/ etc /中(etc / httpd / conf / httpd.conf)。我认为我现在修改过的问题是……我应该保留哪一个?如以下faff的注释所示,/ etc /版本是内置版本吗?
当前解决方案:我认为我只接受一个事实,因为我需要成为root用户,所以在编辑此文件时需要使用sudo。我稍后可能会更改它,以便我始终以root用户身份运行,但就目前而言sudo就足够了。
这似乎与文件系统权限有关。确保/usr/local/logs/目录存在并且可以由您以其身份运行Apache的用户写入。
如果您不想让logs普通用户可写目录,则可以创建日志文件:
sudo touch /usr/local/logs/error_log
Run Code Online (Sandbox Code Playgroud)
然后将文件的所有者更改为正确的用户:
sudo chown allen /usr/local/logs/error_log
Run Code Online (Sandbox Code Playgroud)
假设您要以用户身份运行Apache allen。
如果要更改Apache日志文件的位置,请ErrorLog在httpd.conf文件中查找指令(如果不存在,则必须添加该指令):
ErrorLog path/to/logfile
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
31594 次 |
| 最近记录: |