我遇到了一个问题,一定有一个简单的解决方案,但我没有看到,但我用谷歌搜索了一次又一次,却无济于事。
我遇到的问题是当我做一个服务器(物理机器)每次 Apache 都告诉我/tmp/apache2-gbd-dump
不存在并要检查httpd.conf
文件,然后重新启动。好吧,我检查了 conf 文件,果然它调用了/tmp/apache2-gbd-dump
核心转储。问题是该文件实际上不存在。当我查看日志时,这是与启动失败相关的唯一警告/错误。
所以我尝试创造文件,chown
它到www-data:www-data
并且chmod
它到777
。而这作品,现在我可以了sudo service apache2 start
。一旦我重新启动物理机,核心转储文件就会消失,我必须再次重新创建该文件手动让 Apache 启动,因为它会自动启动。当它变成生产服务器时,这显然行不通。有人知道我可以查看什么来找出原因吗为什么这是怎么回事?这是 conf 文件中的代码,如果有人发现相关问题,可以指出来吗?
CoreDumpDirectory /tmp/apache2-gdb-dump
LockFile ${APACHE_LOCK_DIR}/accept.lock
PidFile ${APACHE_PID_FILE}
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5
<IfModule mpm_prefork_module>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
<IfModule mpm_worker_module>
StartServers 2
MinSpareThreads 25
MaxSpareThreads 75
ThreadLimit 64
ThreadsPerChild 25
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
<IfModule mpm_event_module>
StartServers 2
MinSpareThreads 25
MaxSpareThreads 75
ThreadLimit 64
ThreadsPerChild 25
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
AccessFileName .htaccess
<Files ~ "^\.ht">
Order allow,deny
Deny from all
Satisfy all
</Files>
DefaultType None
HostnameLookups Off
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
Include mods-enabled/*.load
Include mods-enabled/*.conf
Include httpd.conf
Include ports.conf
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
Include conf.d/
Include sites-enabled/
答案1
我认为您的 /tmp 是tmpfs
挂载。您需要将核心路径更改为 /var 或其他地方。
请参阅页面core_pattern
中的内容man core
。