Как установить заголовок HTTP "Access-Control-Allow-Origin" для ответов HTTP с веб-сервера thttpd
У меня есть веб-сервер thttpd ( http://acme.com/software/thttpd/), на котором у меня есть изображения (svg) и файлы JSON.
Я разрабатываю небольшую веб-страницу, которая должна получить эти ресурсы с моего веб-сервера, но я всегда получаю следующую ошибку:
No 'Access-Control-Allow-Origin' header is present on the requested resource.
Я знаю, что мне нужно установить заголовок Access-Control-Allow-Origin на стороне сервера, чтобы принимать запросы от любого источника, как в файле.htaccess на сервере Apache:
Header set Access-Control-Allow-Origin *
Но я действительно не могу понять, как это сделать на сервере thttpd. Вся документация и связанные с ней темы, которые я прочитал, относятся к Apache, NGINX, IIS6, ...
У меня есть все необходимые права для изменения файлов конфигурации на веб-сервере (у меня есть root-доступ).
Обратите внимание, что я также пытался использовать "jsonp" в качестве типа данных в моем HTTP-запросе, в моем коде Javascript, но я получаю следующую ошибку при попытке получить мой файл 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 });
Любая помощь могла бы быть полезна!
Спасибо
0 ответов
В libhttpd.c вы можете обновить строку ответа, чтобы включить
+ Изменить
"%.20s %d %s\015\012Server: %s\015\012Content-Type: %s\015\012Date: %s\015\012Last-Modified: %s\015\012Accept-Ranges: bytes\015\012Connection: close\015\012"
Чтобы
"%.20s %d %s\015\012Server: %s\015\012Content-Type: %s\015\012Date: %s\015\012Last-Modified: %s\015\012Accept-Ranges: bytes\015\012Access-Control-Allow-Origin: *\015\012Connection: close\015\012"