【发布时间】:2016-01-05 08:27:06
【问题描述】:
我正在尝试使用 Shopify 应用程序代理将页面嵌入到 Shopify 商店。我已将内容类型设置为“应用程序/液体”,但商店只是想下载响应,而不是显示它。
我做错了什么?根据here,设置此内容类型应导致商店呈现退货。
我的示例代码是:
header("Content-Type: application/liquid");
echo "<h1>Hello!</h1>";
exit;
【问题讨论】:
我正在尝试使用 Shopify 应用程序代理将页面嵌入到 Shopify 商店。我已将内容类型设置为“应用程序/液体”,但商店只是想下载响应,而不是显示它。
我做错了什么?根据here,设置此内容类型应导致商店呈现退货。
我的示例代码是:
header("Content-Type: application/liquid");
echo "<h1>Hello!</h1>";
exit;
【问题讨论】:
我遇到了同样的问题。经过数小时的故障排除后,我发现是我的 .htaccess 文件中的指令导致了问题。这是之前的样子:
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
当我将其更改为以下时,代理页面正确呈现:
# Redirect Trailing Slashes...
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)/$ /$1 [L,R=301]
希望有帮助!
编辑:
另请注意,如果您不是请求文件(例如:proxy.php),而是使用目录(例如:http://yourdomain.com/proxy),则对服务器的请求包括尾部斜杠(意味着 Shopify 的代理请求 http://yourdomain.com/proxy/) . htaccess 文件发出 301 重定向,这迫使 Shopify 下载文件,而不是将其解释为流动文件。要解决该问题,您可以添加另一个重写条件,以排除这些域被重定向到其“非尾随斜杠”对应项。
【讨论】: