【问题标题】:How to Enable CORS for Docker Apache httpd server?如何为 Docker Apache httpd 服务器启用 CORS?
【发布时间】:2018-01-03 22:51:40
【问题描述】:

我需要创建一个 apache 服务器来托管我的文件并通过 ajax 获取它们。所以,我使用 docker 来部署我的服务器。

我的 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。不 请求中存在“Access-Control-Allow-Origin”标头 资源。因此不允许访问 Origin '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

请帮我解答这个问题。

【问题讨论】:

  • 进入容器并获取默认的httpd.conf。然后根据您的需要进行修改。

标签: apache docker cors httpd.conf


【解决方案1】:

您可以使用命令 docker exec -it nameContainer sh 在 shell-terminal 中输入。在终端中写入:su 使用这些命令现在您是 Docker 中的 root 用户。

现在在终端中,您需要编写 a2enmod headers 并重新启动您的 docker

最后一个命令是激活 mod_header,现在你已经在你的项目根文件中创建了一个 .htaccess 并在里面写:

Header add Access-Control-Allow-Origin "*"

这样对我来说工作正常,不需要在我的机器上安装 apache

【讨论】:

    猜你喜欢
    • 2015-11-23
    • 2014-04-30
    • 2016-02-13
    • 1970-01-01
    • 2020-10-04
    • 2019-08-14
    • 2013-02-01
    • 2014-08-28
    • 2017-02-20
    相关资源
    最近更新 更多