我正在尝试使用本教程在我的 apache2 服务器上安装 gitlab:http://blog.florentlim.com/how-to-install-gitlab-on-debian-7-wheezy-on-apache2-http-server/ 一切似乎都进展顺利,我完成了每一步,没有任何大问题。
但是现在当我尝试连接我的 gitlab 页面时,它会显示“错误 500 页面”。查看我的 gilab production.log ,看起来 gilab 无法连接到 /var/run/redis/redis.socket 文件,果然,没有这样的文件。我不知道为什么...我验证了我的 /etc/redis/redis.conf 文件,TCP 端口设置为 0,并且我得到了以下行
unixsocket /var/run/redis/redis.sock
unixsocketperm 770
那么为什么 redis 拒绝创建我的套接字?
任何帮助都将不胜感激。谢谢
答案1
我遇到了类似的问题,但是在 Arch Linux 的衍生产品上。
必须为 OpenVAS 安装 Redis,并且在尝试启动服务后出现权限错误,如下所示:
systemctl start redis.service
使用以下方法可以看到错误:
journalctl -xeu redis.service
按照systemctl
命令输出的建议。
/run
当它尝试在(也链接自)中创建 Unix 套接字时,/var/run
它会失败,因为它无法创建文件。我可以手动在使用下创建一个redis
子目录,并将所有者更改为用户,然后启动,但该目录后来一直消失。/run
sudo
redis
redis
我尝试使用 pacman 重新安装,因为我有点迷茫,但这似乎没有帮助。
我的解决方案
跑步后
sudo systemctl enable redis.service
我可以启动该服务,并且/run/redis
(也链接为/var/run/redis
)存在 PID 和 Unix 套接字文件,如unixsocket
我的配置文件中的条目配置的那样。
我可以确认它可以通过以下方式访问:
redis-cli -s /run/redis/redis.sock
重启后它仍然很好。