You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

本地Shopify应用文件部署至合作伙伴账户的技术咨询

解决Shopify私有应用本地文件部署与集成问题

一、先明确核心误区:Shopify合作伙伴后台不托管应用代码

首先要搞清楚:Shopify合作伙伴账户不会直接存放你的应用代码,私有应用的代码需要你自己部署到公网可访问的服务器上,Shopify只是通过API和你的应用进行交互。所以你不需要把文件上传到合作伙伴账户,而是要把代码部署到外部服务器,再和Shopify后台做配置关联。

可选的部署工具/方案

  • 传统PHP空间:用FTP工具(比如FileZilla)把你的4个文件和inc文件夹直接上传到服务器的网站根目录即可。
  • 云平台:像Heroku(支持PHP部署,用Git推送代码)、AWS EC2、DigitalOcean Droplet这类云服务器,上传代码后配置Apache/Nginx指向你的代码目录就行。
  • 本地测试工具:如果只是开发测试阶段不想买服务器,可以用ngrok把本地Web服务(比如XAMPP的80端口)映射到公网,生成临时URL供Shopify访问,适合快速调试。

二、本地文件与Shopify合作伙伴账户的集成步骤

  1. 部署代码到公网可访问地址
    不管用服务器还是ngrok,确保你的install.php、generate_token.php等文件能通过公网URL正常访问,比如https://your-domain.com/install.php或者ngrok生成的临时地址。
  2. 在合作伙伴后台配置应用参数
    进入你的私有应用详情页,找到应用URL和重定向URL:
    • 应用URL:填你的应用首页(如果有的话),或者直接填install.php的公网地址。
    • 重定向URL:必须和你install.php里的$redirect_uri完全一致,注意这里必须是公网可访问的generate_token.php地址,比如https://your-domain.com/generate_token.php。
  3. 触发安装授权流程
    可以直接访问https://your-shop.myshopify.com/admin/apps/your-app-id(替换成你的店铺域名和应用ID),或者在店铺后台找到你的私有应用点击「安装」,触发授权流程。

三、你的代码里需要紧急修正的问题

看了你提供的代码,有几个明显错误会导致流程失败:

1. install.php里的$redirect_uri完全错误

你当前写的是:

$redirect_uri = "https://dd351ab1814cec97dcb5e8d919887c2a:abb65451f1f5c828011242c806971e2b@bahlultechstore.myshopify.com/admin/api/2020-01/orders.json/generate_token.php";

这不符合Shopify的要求,redirect_uri应该是你的generate_token.php的公网URL,比如:

$redirect_uri = "https://your-public-domain.com/generate_token.php";

而且这个地址必须和合作伙伴后台配置的重定向URL完全匹配,否则授权会失败。

2. api_call_write_products.php里的硬编码问题

  • $shop应该是你的实际店铺域名前缀(不带.myshopify.com),比如bahlultechstore,而不是demo-shop。
  • $token不能硬写死,应该从generate_token.php获取到的令牌存储起来(比如存数据库或会话),再调用API时取出使用,硬编码的令牌过期或更换后会直接失效。

3. functions.php的SSL验证风险

你注释掉了SSL验证代码:

// curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 3);
// curl_setopt($curl, CURLOPT_SSLVERSION, 3);

开发阶段可以暂时关闭,但生产环境必须开启SSL验证,避免安全漏洞,建议调试完成后恢复这两行代码。

四、快速测试流程建议

  1. 用ngrok把本地Web服务(比如XAMPP的80端口)映射到公网,得到临时URL(比如https://abc123.ngrok.io)。
  2. 修改install.php里的$redirect_uri为https://abc123.ngrok.io/generate_token.php,同时在合作伙伴后台把私有应用的重定向URL改成相同地址。
  3. 访问https://abc123.ngrok.io/install.php?shop=bahlultechstore.myshopify.com,触发授权流程,看是否能成功获取访问令牌。
  4. 把获取到的令牌替换到api_call_write_products.php的$token里,修改$shop为bahlultechstore,访问这个文件测试产品修改功能。

内容的提问来源于stack exchange,提问作者Bahlul Siddiquee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 00:02:30