我需要创建一个apache服务器来托管我的文件并通过ajax获取它们。所以,我使用docker来部署我的服务器。
我的码头图片是httpd:2.4。
我使用以下命令部署了服务器:
docker run -p 80:80 -dit --name file-server \
-v /sources/docker/apache-server/www/:/usr/local/apache2/htdocs/ httpd:2.4
但是当我想要发出ajax请求时,结果就是这样:
XMLHttpRequest无法加载http://server/kml/example.kml。没有 '访问控制允许来源'标题出现在请求的上 资源。起源' null'因此不允许访问。
所以,我想按照下一步How to Enable CORS for Apache httpd server? (Step-By-Step Process)进行操作。但我不知道如何在组件的httpd.conf中添加该命令。我没有httpd.conf模板来替换它:
v /sources/docker/apache-server/my-httpd.conf:/usr/local/apache2/conf/httpd.conf
请帮我解决这个问题。
答案 0 :(得分:0)
您已使用命令 docker exec -it nameContainer sh
在 shell-terminal 中输入。在终端中写入:su 使用这些命令,现在您是 Docker 中的 root 用户。
现在在终端中,您必须编写 a2enmod headers
并重新启动您的 docker
最后一个命令是激活 mod_header,现在你已经在你的项目根文件中创建了一个 .htaccess 并在里面写:
Header add Access-Control-Allow-Origin "*"
这样对我来说工作正常,不需要在我的机器上安装 apache