当我响应时,Google Chrome 不会呈现 .xhtml 文件:
http://localhost:56685/simple/OPS/cover.xhtml
但是当我使用文件协议时它可以成功呈现:
file:///C:/Users/Kosha/Downloads/cover.xhtml
当浏览器开始将文档下载到硬盘时,这不是坏 URL 的问题。
<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title/>
<link rel="stylesheet" href="style.css" type="text/css"/>
<link rel="stylesheet" href="style.css" type="text/css"/>
</head>
<body class="cover">
<svg xmlns="http://www.w3.org/2000/svg" class="cover-svg" viewBox="0 0 391 600">
<image height="600" xlink:href="images/cover.jpg" width="391" xmlns:xlink="http://www.w3.org/1999/xlink"/>
</svg>
</body>
</html>
答案1
最可能的问题是您的 HTTP 服务器提供了错误的Content-Type
文件。
有些服务器会声称所有具有无法识别的扩展名的文件都是类型application/octet-stream
,因此您需要配置您的服务器以使用application/xhtml+xml
用于.xhtml
文件。(同时,.html
将使用text/html
。)
$ telnet superuser.com 80 Enter ↵ HEAD / HTTP/1.0Enter ↵ 主机:superuser.comEnter ↵ Enter ↵