2

我将 ddev 更新到 1.3.0 版并运行ddev config. 之后,我将配置从 更改nginx-fpmapache-fpm。启动 ddev 并检查 HTTP 标头后,使用了 nginx/1.15.3。为了让 Apache 正常工作,还有其他事情要做吗?

我的 config.yaml:

APIVersion: v1.3.0
name: example
type: typo3
docroot: public
php_version: "7.2"
webserver_type: apache-fpm
router_http_port: "8080"
router_https_port: "8443"
xdebug_enabled: true
additional_hostnames: []
additional_fqdns: []
provider: default
hooks:
  post-start:
  - exec: composer install -d /var/www/html
  - exec: ../vendor/bin/typo3cms cache:flush
  - exec: ../vendor/bin/typo3cms database:updateschema
  - exec: yarn --cwd typo3conf/ext/theme/Resources/Private install
4

1 回答 1

1

这是一个很好的问题!我知道是因为我自己在编写测试时已经被它难住了。

答案是:Apache 在 web 容器中运行,但是当您使用 http://*.ddev.local URL 时,它会通过 ddev-router,这是一个 nginx 反向代理,这就是您看到 nginx 标头的原因。但请放心,您使用的是 Apache。您可以通过以下方式确认:

  • ddev sshps -ef查看正在运行的内容
  • ddev start点击and报告的 127.0.0.1 URL ddev describe。该 URL 直接进入 Web 容器,例如http://127.0.0.1:33221 - 您将在该容器上看到 apache 标头。

您的问题太好了 - 您能否将标题编辑为“当 ddev 配置为使用 apache 时为什么我会看到 nginx 标头?” - 我认为其他人会这样认为。

$ curl -I http://127.0.0.1:33224
HTTP/1.1 200 OK
Date: Fri, 12 Oct 2018 02:18:26 GMT
Server: Apache/2.4.25 (Debian)
Cache-Control: must-revalidate, no-cache, private
X-Drupal-Dynamic-Cache: HIT
X-UA-Compatible: IE=edge
Content-language: en
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
Expires: Sun, 19 Nov 1978 05:00:00 GMT
Vary:
X-Generator: Drupal 8 (https://www.drupal.org)
X-Drupal-Cache: MISS
Content-Type: text/html; charset=UTF-8

于 2018-10-12T13:29:25.347 回答