我们有一个运行在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起,$ base_url已在settings.php中被删除,原因如下https://www.drupal.org/node/2528988
然而,这并没有让我更接近实现将第二个站点代理为子目录的目标......
任何帮助将不胜感激!
此致 Ť
答案 0 :(得分:0)
我认为它应该可以通过启用多站点并在sites.php中的$ sites数组中添加一行来实现,所以它看起来像这样:
$sites = array(
..existing code..
'externaldomain.com.path_to_resource.article_dev' => '<site>',
);