如何为来自 thttpd Web 服务器的 HTTP 响应设置 HTTP 标头"Access-Control-Allow-Origin"



我有一个thttpd(http://acme.com/software/thttpd/)我有图像(svg)和JSON文件的web服务器。

我正在开发一个小网页,需要从我的网络服务器检索这些资源,但我总是收到以下错误:

No 'Access-Control-Allow-Origin' header is present on the requested resource.

我知道我必须在服务器端设置Access Control Allow Origin标头,以接受来自任何来源的请求,比如Apache服务器上的.htaccess文件:

Header set Access-Control-Allow-Origin *

但我真的不知道如何在thttpd服务器上做到这一点。到目前为止,我阅读的所有文档和相关主题都是针对Apache、NGINX、IIS6。。。

我拥有修改web服务器上配置文件所需的所有权限(我有root访问权限)。

请注意,我还尝试在我的HTTP请求和Javascript代码中使用"jsonp"作为数据类型,但在尝试检索JSON文件时出现了以下错误。

Uncaught SyntaxError: Unexpected token :

无论如何,我还需要获得SVG格式的图像,所以我希望避免使用"jsonp"作为数据类型。

这是我的javascript代码:

31 $.ajax({
33   url: "http://ip_address/file.json",
34   dataType: "jsonp",                                                                                                                                                                             
35   crossDomain: true,
36   data: {
37     format: "json"
38   },
39   success: function(data) {
40     var json = $.parseJSON(data);
41     alert(data);
42   }
43 });

任何帮助都将不胜感激!

感谢

在libhttpd.c中,您可以更新响应字符串以包含

更改

"%.20s %d %s1512Server: %s1512Content-Type: %s1512Date: %s1512Last-Modified: %s1512Accept-Ranges: bytes1512Connection: close1512"

"%.20s %d %s1512Server: %s1512Content-Type: %s1512Date: %s1512Last-Modified: %s1512Accept-Ranges: bytes1512Access-Control-Allow-Origin: *1512Connection: close1512"

https://github.com/uoaerg/thttpd/blob/master/libhttpd.c#L652

相关内容

  • 没有找到相关文章

最新更新