我在 Google Appengine 上运行一个 Wordpress 网站。它使用 wordpress 的 GAE 插件。媒体库在 appengine 服务器上工作,但不在本地工作。大多数图像都相同,除非它们具有硬编码链接。我收到大量 404 错误...
http://localhost:8080/_ah/gcs/<BUCKET_NAME>/image.png Failed to load resource: the server responded with a status of 404 (Not Found)
此链接在 gae 服务器上的工作位置:
http://<BUCKET_NAME>.storage.googleapis.com/image.png
我在本地运行我的应用程序是这样的:
dev_appserver.py --php_executable_path=/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/php55/php-cgi .
谷歌的 python 脚本似乎没有正确转发链接到实际的真实存储桶......有什么想法吗?
最佳答案
这是预期的行为:
链接http://<BUCKET_NAME>.storage.googleapis.com/image.png
是生产链接,请求由生产服务器提供。
链接http://localhost:8080/_ah/gcs/<BUCKET_NAME>/image.png
是本地链接,devserver 必须实际包含 <BUCKET_NAME>/image.png
.该对象很可能只存储在生产环境中,当试图在本地机器上找到它时会导致 404。
作为一种解决方案,您可以考虑简单地针对生产云存储运行本地测试,以节省将所有存储项传输(并保持同步)到本地的成本,这几乎肯定会在网络传输中花费更多和开发时间比这个更简单的替代方案。
关于php - 具有云存储的 Google App Engine 无法在本地运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37952588/