当前无法使用此页面 127.0.0.1 未发送任何数据。ERR_EMPTY_RESPONSE
- [x] 我已升级贴吧云签到到最新版本,并且运行了升级脚本
- [x] 我已搜索过 Issue 区,没有找到相关问题
问题描述
系统是Windows 11 pro 23H2,docker、签到程序均是最新版,更改端口为8182,首次安装后本机无法访问127.0.0.1:8182,提示当前无法使用此页面 127.0.0.1 未发送任何数据。ERR_EMPTY_RESPONSE
复现步骤
浏览器中输入127.0.0.1:8182
环境
- 云签到版本:5.0.1
- 服务器系统和版本:Windows 11 pro 23H2
- 云签到是否在 Docker 中运行:是
- PHP 版本:
- MySQL 版本:
日志: log.txt
2024-05-22 18:03:00 web-1 | 百度贴吧云签到 Ver.5.01 - 控制台模式 2024-05-22 18:03:00 web-1 | ========================================================== 2024-05-22 18:03:00 web-1 | 检测到无 install.lock 文件如果您尚未安装本程序,请前往安装如果您已经安装本程序,请手动放置一个空的 install.lock 文件到 /setup 文件夹下,为了您站点安全,在您完成它之前我们不会工作。 2024-05-22 18:03:00 web-1 | 为什么必须建立 install.lock 文件?它是云签到的保护文件,如果云签到检测不到它,就会认为站点还没安装,此时任何人都可以安装/重装云签到。
touch setup/install.lock
2024-05-22 18:03:00 web-1 | 百度贴吧云签到 Ver.5.01 - 控制台模式 2024-05-22 18:03:00 web-1 | ========================================================== 2024-05-22 18:03:00 web-1 | 检测到无 install.lock 文件如果您尚未安装本程序,请前往安装如果您已经安装本程序,请手动放置一个空的 install.lock 文件到 /setup 文件夹下,为了您站点安全,在您完成它之前我们不会工作。 2024-05-22 18:03:00 web-1 | 为什么必须建立 install.lock 文件?它是云签到的保护文件,如果云签到检测不到它,就会认为站点还没安装,此时任何人都可以安装/重装云签到。
touch setup/install.lock
恐怕不是它的问题,而且按其他人的情况,没有install.lock的时候会弹出安装界面吧,但是它网页端不显示内容
log2.txt
docker是wsl2后端,日志里有一个报错是无权限写入error.log,但我用管理员权限打开docker也没有解决这个报错
2024-05-22 18:03:00 web-1 | 百度贴吧云签到 Ver.5.01 - 控制台模式 2024-05-22 18:03:00 web-1 | ========================================================== 2024-05-22 18:03:00 web-1 | 检测到无 install.lock 文件如果您尚未安装本程序,请前往安装如果您已经安装本程序,请手动放置一个空的 install.lock 文件到 /setup 文件夹下,为了您站点安全,在您完成它之前我们不会工作。 2024-05-22 18:03:00 web-1 | 为什么必须建立 install.lock 文件?它是云签到的保护文件,如果云签到检测不到它,就会认为站点还没安装,此时任何人都可以安装/重装云签到。
touch setup/install.lock恐怕不是它的问题,而且按其他人的情况,没有install.lock的时候会弹出安装界面吧,但是它网页端不显示内容
log2.txt docker是wsl2后端,日志里有一个报错是无权限写入error.log,但我用管理员权限打开docker也没有解决这个报错
更换为hyper-v后端后没有变化,日志和wsl2后端的基本一致 log3.txt
curl -v 127.0.0.1:8182
curl -v 127.0.0.1:8182
* STATE: INIT => CONNECT handle 0x20071598; line 1397 (connection #-5000)
* Rebuilt URL to: 127.0.0.1:8182/
* Added connection 0. The cache now contains 1 members
* Trying 127.0.0.1...
* TCP_NODELAY set
* STATE: CONNECT => WAITCONNECT handle 0x20071598; line 1450 (connection #0)
* Connected to 127.0.0.1 (127.0.0.1) port 8182 (#0)
* STATE: WAITCONNECT => SENDPROTOCONNECT handle 0x20071598; line 1557 (connection #0)
* Marked for [keep alive]: HTTP default
* STATE: SENDPROTOCONNECT => DO handle 0x20071598; line 1575 (connection #0)
> GET / HTTP/1.1
> Host: 127.0.0.1:8182
> User-Agent: curl/7.50.3
> Accept: */*
>
* STATE: DO => DO_DONE handle 0x20071598; line 1654 (connection #0)
* STATE: DO_DONE => WAITPERFORM handle 0x20071598; line 1781 (connection #0)
* STATE: WAITPERFORM => PERFORM handle 0x20071598; line 1791 (connection #0)
* STATE: PERFORM => DONE handle 0x20071598; line 1955 (connection #0)
* multi_done
* Curl_http_done: called premature == 0
* Empty reply from server
* Connection #0 to host 127.0.0.1 left intact
* Expire cleared
curl: (52) Empty reply from server
报empty reply
curl时nginx的access.log有新增行吗
我的是首次安装正常,但是重启docker后就跟您的一样了。日志里有这条:
百度贴吧云签到 Ver.5.01 - 控制台模式
==========================================================
PHP Parse error: syntax error, unexpected token "=", expecting ")" in /var/www/config.php on line 22
docker exec $containerName cat /var/www/config.php
docker exec $containerName cat /var/www/config.php
是我compose文件里写错了,是我的错误,改了compose文件就好了。。。
不过在此之前,我还在compose文件里db:volumes下面加了一行这个$Path:/var/log/
2024-05-22 18:03:00 web-1 | 百度贴吧云签到 Ver.5.01 - 控制台模式 2024-05-22 18:03:00 web-1 | ========================================================== 2024-05-22 18:03:00 web-1 | 检测到无 install.lock 文件如果您尚未安装本程序,请前往安装如果您已经安装本程序,请手动放置一个空的 install.lock 文件到 /setup 文件夹下,为了您站点安全,在您完成它之前我们不会工作。 2024-05-22 18:03:00 web-1 | 为什么必须建立 install.lock 文件?它是云签到的保护文件,如果云签到检测不到它,就会认为站点还没安装,此时任何人都可以安装/重装云签到。
touch setup/install.lock恐怕不是它的问题,而且按其他人的情况,没有install.lock的时候会弹出安装界面吧,但是它网页端不显示内容
log2.txt docker是wsl2后端,日志里有一个报错是无权限写入error.log,但我用管理员权限打开docker也没有解决这个报错
在 docker-compose.yml 里 db:volumes 那部分里加一行,比如./mysql/log:/var/log/mysql就行了
https://github.com/MoeNetwork/Tieba-Cloud-Sign/issues/265#issuecomment-2143693494 https://github.com/MoeNetwork/Tieba-Cloud-Sign/blob/09ca411da65a97808898e639466f85808c491153/init.php#L35-L37 https://github.com/MoeNetwork/Tieba-Cloud-Sign/blob/09ca411da65a97808898e639466f85808c491153/docker/docker-compose.yml#L13-L15
curl -v 127.0.0.1:8182
sysctl -w net.ipv4.ip_forward=1
我是关了ip转发,导致公网访问不了,测试了一下127.0.0.1可以访问就意识到了
https://unix.stackexchange.com/questions/673573/what-exactly-happens-when-i-enable-net-ipv4-ip-forward-1