如何配置 WEBrick 以显示 XHTML 及其 CSS

How to Configure WEBrick to Display XHTML and its CSS

提问人:ExpatSailor 提问时间:1/12/2023 最后编辑:engineersmnkyExpatSailor 更新时间:1/12/2023 访问量:56

问:

我无法让 WEBrick 显示 XHTML 页面及其关联的 CSS - 带有“html”扩展名的完全相同的文件可以完美运行,但使用“xhtml”扩展名会失败。如何配置 WEBrick 以显示 XHTML 及其 CSS?

我试过这个:

require 'webrick'

def start_webrick(config = {})
  config.update(:Port => 5000, :DocumentRoot => '\path\to\my\file\')
  server = WEBrick::HTTPServer.new(config)
  yield server if block_given?
  ['INT', 'TERM'].each {|signal|
    trap(signal) {server.shutdown}
  }
  server.start
end

start_webrick

我也试过这个:

require 'webrick'

# WEBrick::HTTPUtils::DefaultMimeTypes['xhtml'] = 'application/xhtml+xml'

# var = File.read('/PD/Dev/Data/Web/Public/index.xhtml')
server = WEBrick::HTTPServer.new(:Port => 5000, :DocumentRoot => '\path\to\my\file\')
server.mount_proc('/') {|request, response| response.body}
trap("INT") {server.shutdown}
server.start

我正在使用 Ruby 2.7,并且我还更改了默认的 Mime 类型,如上面的评论所示。如果我取消注释“File.read...”。上面并将“response.body”更改为“response = var”,我显示了文件,但没有达到预期。

我对此很陌生,希望得到任何帮助。谢谢。

CSS Ruby XHTML Webrick

评论

0赞 engineersmnky 1/12/2023
XHTML 是 WEBrick 中定义的 MIME 类型,但它被定义为 text/html Source,所以我不知道这个语句是如何实现的:*“...具有“HTML”扩展名的完全相同的文件可以完美运行,但是使用“XHTML”扩展名会失败。您能否提供一些额外的背景信息,说明您的期望与收到的内容?
0赞 ExpatSailor 1/12/2023
您好,感谢您的关注(很抱歉我的乱码和代码列表)。我的意思是,如果我将文件扩展名从“xhtml”更改为“html”,它就会像宣传的那样工作,但我无法弄清楚如何让 WEBrick 正确显示扩展名为“xhtml”的文件;我所说的“正确”是指它的 CSS 格式。

答: 暂无答案