Apache 没有在 Ubuntu 上为我从已安装的网络共享中提供某些内容。
根据我尝试打开的文件的内容,它没有正确提供:
这不起作用:
is a link to another nifty site
<H2>This is a Medium Header</H2>
Chrome 发出以下错误消息:“ ERR_INVALID_HTTP_RESPONSE ”
邮递员:“错误:解析错误:预期的 HTTP/ ”
curl:“ curl:(1)在不允许时收到HTTP / 0.9 ”
这行得通(只有一个空行)
is a link to another nifty site
<H2>This is a Medium Header</H2>
网络共享安装在 /media/data 中(cifs;出于测试目的,权限设置为 777)
从 /var/www/server 到 /media/data 有一个符号链接,我可以从 VM 内部查看和更改内容。
apache 对文件内容很挑剔对我来说没有多大意义。我不完全确定如何解释来自 3 个不同客户端的错误消息,但由于它们都失败了,即使错误日志没有显示任何问题,看起来 Apache 也是问题所在。
将文件复制到 /var/www/html (默认目录)并将虚拟主机更改为该位置后,无论内容是什么,文件都会得到服务。
我不知道这是否重要,但在网上搜索“ ERR_INVALID_HTTP_RESPONSE ”时,我发现有些人在谈论 chrome 在某些端口上的行为怪异:我目前在端口 28080 上运行服务器(为了向后兼容当前设置和因为我打算在 80 端口上设置 nginx);nginx 已经安装,但我认为它不会干扰。
如果这听起来有些令人困惑,请原谅我,但这可能只是因为我自己完全困惑。
这是一个干净的虚拟机,据我所知,唯一的附加包是 apache、nginx 和 cifs-utils。
在这种情况下,有没有其他人遇到过网络共享的奇怪行为?我想要网络共享上的 htdocs,因为我更容易从我的 Windows 机器访问,除了网络共享之外,还有什么推荐的访问 htdocs 的方法吗?
编辑:
curl --verbose --output out.txt --http0.9 localhost:28080/test.html
给出以下控制台输出:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Trying 127.0.0.1:28080...
* TCP_NODELAY set
* Connected to localhost (127.0.0.1) port 28080 (#0)
> GET /test.html HTTP/1.1
> Host: localhost:28080
> User-Agent: curl/7.68.0
> Accept: */*
>
{ [15 bytes data]
100 294 0 294 0 0 58 0 --:--:-- 0:00:05 --:--:-- 0
* Closing connection 0
虽然 out.txt 包含以下内容:
18:55:12 GMT
ETag: *removed*
Accept-Ranges: bytes
Content-Length: 67
Content-Type: text/html
is a link to another nifty site
<H2>This is a Medium Header</H2>
^@^@^@^@^@^@�)^@^@^@^@^@^@w�^@^@�r�X]﹟^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^X^@^@^@^@^@^@^@����������������^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
在另一个文件中,末尾的奇怪字符串实际上包含关键字 SMB。我不知道这是巧合还是这实际上意味着什么:
19:34:11 GMT
ETag: *removed*
Accept-Ranges: bytes
Content-Length: 6
Content-Type: text/plain
sadssa^@^@^@^@]﹟^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@)^@^A^Re ^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@�����������������SMB@^@^@^@^@^@^@^@^F^@
^@^D^@^@^@^@^@^@^@�)^@^@^@^@^@^@w�^@^@�r�X]﹟^@^@^@^@^@
我还注意到可能与文件权限有关的 r 和 X 部分?
编辑2:
网络共享(fstab):
//www.example.com/Share /media/data cifs username=user,password=pass,domain=WORKGROUP,vers=2.0,file_mode=0777,dir_mode=0777 0 0
建立的符号链接:
sudo ln -s /media/data/ /var/www/server
apache2.conf:
[...]
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
[...]