相关疑难解决方法(0)

Google云端存储:如何重置边缘缓存?

我更新了一张图片(来自PHP),但仍然下载了旧版本的图片.

如果我在GCS控制台上下载图像,我可以下载新版本的图像.但是,下面的url会返回旧版本.

https://storage.googleapis.com/[bucket name] /sample-image.png

似乎旧图像位于Google的边缘缓存中.

有些文章说我应该删除图像对象然后插入新的图像对象,以便清除边缘缓存.

有谁知道这个?


更新1

这是我在GCE上的PHP代码.

$obj = new \Google_Service_Storage_StorageObject();
$obj->setName($path . "/" . $name);

$client = new \Google_Client();
$client->useApplicationDefaultCredentials();
$client->addScope(\Google_Service_Storage::DEVSTORAGE_FULL_CONTROL);

$storage = new \Google_Service_Storage($client);
$bucket = 'sample.com';

$binary = file_get_contents($_FILES['files']['tmp_name']);
$fileInfo = new finfo(FILEINFO_MIME_TYPE);
$mimeType = $fileInfo->buffer($binary);

$storage->objects->insert($bucket, $obj, [
    'name' => $path . "/" . $name,
    'data' => $binary,
    'uploadType' => 'media',
    'mimeType' => $mimeType,
]);
Run Code Online (Sandbox Code Playgroud)

似乎只有这些参数才有效.我认为我不能设置任何缓存设置.

// Valid query parameters that work, but don't appear in discovery.
private $stackParameters = array(
    'alt' => …
Run Code Online (Sandbox Code Playgroud)

google-cloud-storage

9
推荐指数
1
解决办法
8782
查看次数

缺少在GCloud上更新静态ReactJS站点的步骤

有人会认为只是替换与应用程序关联的存储桶中的内容会更新应用程序,但事实并非如此.


我有一个昨天部署的网站.我创建了这个存储桶,然后在命令行中创建了该目录,然后部署了React应用程序

gsutil rsync -r gs://bucket-name ./app-name
Run Code Online (Sandbox Code Playgroud)

然后我进入项目目录并做了

gcloud app deploy
Run Code Online (Sandbox Code Playgroud)

昨天一切正常.但今天我做了更改,进入同一目录,你根本不能再做gcloud app deploy了.我将新的构建文件夹复制到存储桶中.但似乎缺少一步?我运行了与昨天相同的命令,认为rsync可能会将存储桶同步到应用程序,然后我又回到了应用程序并进行了另一次部署.但一切都没有改变.我错过了什么步骤?


此问题与以下内容无关:如何在Google云端存储上快速更新静态网站?

rsync reactjs google-cloud-platform

5
推荐指数
1
解决办法
112
查看次数