Files
Arkie-Library-Frontend/docs/cloudflare-cache-purge.md
2026-05-29 00:25:14 +08:00

92 lines
2.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Cloudflare Cache Purge Manual
Use this when the deployed frontend has already updated on the servers, but the public site still shows an old version because Cloudflare or browser cache is serving stale files.
## Current API-token note
The current `ark-library.com` Cloudflare Zone ID is:
```text
ca1368486d3b0bf9f1066f2a2281dced
```
Cloudflare cache purge by API requires both a valid API token and this Zone ID. If API access is unavailable, use the manual dashboard method below.
> Security note: if a token was pasted into chat, terminal logs, or docs by mistake, revoke it in Cloudflare and create a new one.
## Manual purge in Cloudflare Dashboard
1. Open <https://dash.cloudflare.com/> and log in.
2. Go to **Websites**.
3. Select **ark-library.com**.
4. Go to **Caching****Configuration**.
5. Click **Purge Cache**.
6. Choose one of these:
- **Purge Everything**: safest when a deploy looks stale.
- **Custom Purge**: use when only specific pages/assets are stale.
7. For a stale frontend deploy, purge at least:
- `https://ark-library.com/`
- `https://ark-library.com/index.html`
8. Wait 1060 seconds, then hard-refresh the browser:
- macOS Chrome/Safari: `Cmd + Shift + R`
- Windows/Linux Chrome: `Ctrl + Shift + R`
## Find the Cloudflare Zone ID
1. Open <https://dash.cloudflare.com/>.
2. Select **ark-library.com**.
3. Open **Overview**.
4. In the right sidebar, find **API****Zone ID**.
5. Copy the Zone ID for API purge commands.
For this project, the known Zone ID is `ca1368486d3b0bf9f1066f2a2281dced`.
## API purge after you have Zone ID
Store the token in an environment variable instead of writing it directly into commands:
```bash
export CLOUDFLARE_API_TOKEN='replace-with-new-token'
export CLOUDFLARE_ZONE_ID='replace-with-zone-id'
```
Purge everything:
```bash
curl -sS -X POST \
"https://api.cloudflare.com/client/v4/zones/$CLOUDFLARE_ZONE_ID/purge_cache" \
-H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
-H "Content-Type: application/json" \
--data '{"purge_everything":true}'
```
Purge only the main frontend files:
```bash
curl -sS -X POST \
"https://api.cloudflare.com/client/v4/zones/$CLOUDFLARE_ZONE_ID/purge_cache" \
-H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
-H "Content-Type: application/json" \
--data '{"files":["https://ark-library.com/","https://ark-library.com/index.html"]}'
```
Expected success response includes:
```json
{"success":true}
```
## Create a safer Cloudflare API token
1. In Cloudflare Dashboard, open **My Profile****API Tokens**.
2. Click **Create Token**.
3. Use **Custom token**.
4. Add permissions:
- `Zone``Cache Purge``Purge`
- `Zone``Zone``Read`
5. Set zone resources:
- `Include``Specific zone``ark-library.com`
6. Create the token, copy it once, and store it in a password manager or CI secret.
Do not commit Cloudflare tokens into this repository.