Мой /etc/apache2/sites-enabled/example.com.conf
на удаленном сервере выглядит так ...
<VirtualHost *:80>
ServerAdmin admin@example.com
ServerName example.com
ServerAlias images.example.com
Header set Access-Control-Allow-Origin "*"
DocumentRoot /home/username/var/www/example.com/public_html/
ErrorLog /home/username/var/www/example.com/logs/error.log
CustomLog /home/username/var/www/example.com/logs/access.log combined
</VirtualHost>
Я запускаю проект Django на своем локальном компьютере. Проект отправляет GET-запрос на удаленный сервер для чтения файла JSON: http://images.remote-server.com/dir/subdir/info.json
Но я вижу эту ошибку в консоли своего браузера.
Failed to load http://images.remote-server.com/dir/subdir/info.json: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://127.0.0.1:8000' is therefore not allowed access.
Я ничего не вижу в своем error.log
.
Как правильно установить 'Access-Control-Allow-Origin'
в моем .conf
файл?
Чтобы добавить авторизацию CORS в заголовок с помощью Apache, просто добавьте следующую строку внутри Каталог, Расположение, Файлы или VirtualHost разделы конфигурации вашего сервера (обычно находятся в файле * .conf, таком как httpd.conf или apache.conf) или в файле .htaccess:
<VirtualHost *:80>
....
Header set Access-Control-Allow-Origin "*"
</VirtualHost>
и перезапустите (перезагрузите) apache
Похоже, вы добавили заголовок не на тот виртуальный хост