Я использую Debian 7 и Nginx 1.2.1. Модуль заголовков HTTP включен по умолчанию с пакетами Debian (https://wiki.debian.org/Nginx). Я пытаюсь добавить ссылки на учетные записи facebook, twitter и google plus, используя их данные ссылки (с изображениями, размещенными на их стороне). Проблема в том, что мой браузер не отображает эти 3 изображения. Раньше я использовал Apache, у меня был модуль и инструкция Header set Access-Control-Allow-Origin "*"
в моей конфигурации сайта.
Я перешел на Nginx и не могу заставить эквивалент работать со следующей конфигурацией. У меня также включен Naxsi с использованием набора общих правил для wordpress.
Нет журналов ошибок, нет идеи, где искать начало ответа. Все, что я нашел в Интернете, - это похожие вопросы с похожими ответами, к сожалению для меня (например, Как мне добавить Access-Control-Allow-Origin в NGINX?).
server {
listen 192.0.2.3:80;
server_name blog.example.com;
root /blog/example;
index index.php;
location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
add_header 'Access-Control-Allow-Origin' '*';
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
if ($request_method !~ ^(GET|POST|HEAD)$ ) {
return 444;
}
# location ~* \.(ttf|ttc|otf|eot|woff)$ {
# add_header 'Access-Control-Allow-Origin' '*';
# }
}
Также, curl -I blog.example.com
отображает (отсутствует директива заголовка для перекрестного происхождения?)
HTTP/1.1 200 OK
Server: nginx
Date: Thu, 28 May 2015 06:59:26 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
X-Powered-By: PHP/5.4.39-0+deb7u2
X-Pingback: http://blog.example.com/abc
Мне нужно перекомпилировать Nginx, чтобы добавить некоторые другие модули, и мне было интересно, могут ли помочь дополнительные заголовки (https://github.com/openresty/headers-more-nginx-module), хотя модуля http-заголовков явно должно хватить.
Спасибо за поддержку.
РЕДАКТИРОВАТЬ 1:
Просто понял, что был совершенно неправ, и на самом деле не понял. Речь идет о загрузке шрифтов из другого домена. В консоли своего браузера я вижу, что загружаю шрифты из другого домена (которые не отображаются в моем браузере). Нет ошибки, я получаю http-код 200, но при этом загружен 0 КБ (так что ничего не отображается), и когда я открываю файл на новой вкладке, я могу загрузить контент (так что он действительно доступен).