【发布时间】:2016-03-23 14:03:03
【问题描述】:
我们有一个在 nginx + php-fpm 上运行 drupal 8 的 Web 服务器。我们想使用反向代理服务器将 d8 网站发布为 www.somedomain.com/drupal8
nginx 配置工作正常:
location /article_dev/ {
proxy_buffers 32 32k;
proxy_buffer_size 32k;
proxy_pass http://192.168.158.148:80/;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-By $server_addr:$server_port;
proxy_set_header X-Real-IP $remote_addr;
}
在 settings.php 中我设置了反向代理设置。问题是,当我访问 externaldomain.com/article_dev/ 时,我看到了 d8 页面,但没有加载 css 等,因为资源的路径是:externaldomain.com/path_to_ressource 而不是 externaldomain.com/article_dev/path_to_ressource
在 Drupal 的早期版本(6 和 7)中,可以设置全局 $base_url 来解决问题。从 D8 开始,在 settings.php 中 $base_url 已被弃用,原因在此解释https://www.drupal.org/node/2528988
然而,这并没有让我更接近实现将第二个站点代理为子目录的目标......
任何帮助将不胜感激!
问候, T
【问题讨论】:
-
你有没有想过这个问题?我也无法在子目录中设置 D8。这似乎是不可能的。
标签: php nginx drupal reverse-proxy drupal-8