Linode Object Storage
This guide walks you through connecting Sunshine Cloud Storage to Linode Object Storage (now part of Akamai). Linode offers S3-compatible object storage with data centers around the world.
What You Need
- A Linode/Akamai account
- An Object Storage bucket
- An access key and secret key
Step 1: Create a Bucket
In the Linode Cloud Manager, go to Object Storage and click Create Bucket. Choose a region and give it a label — this will be your bucket name.
Available regions include Newark (us-east-1), Atlanta (us-southeast-1), Chicago (us-ord-1), Frankfurt (eu-central-1), Singapore (ap-south-1), and many more.
For full details, see Linode's documentation on Object Storage.
Step 2: Create Access Keys
In the Linode Cloud Manager, go to Object Storage > Access Keys and click Create Access Key. Give it a label and choose whether to limit access to specific buckets.
Save both the Access Key and Secret Key — the secret key is only shown once.
For full details, see Linode's documentation on access keys.
Step 3: Connect in Sunshine
- Go to Sunshine Photo Cart > Settings > Cloud Storage.
- Select Linode Object Storage as the provider.
- Choose your connection method:
- Database — Enter your Access Key and Secret Key directly in the settings.
- wp-config.php (recommended) — Add the provided code snippet to your
wp-config.phpfile. - Select the Region that matches your bucket's cluster.
- Enter your bucket name, or click Load Buckets to select one.
- Click Test Connection to verify everything works.
wp-config.php Example
define( 'SUNSHINE_CLOUD_STORAGE_SETTINGS', serialize( array(
'provider' => 'linode',
'access-key-id' => 'YOUR_LINODE_ACCESS_KEY',
'secret-access-key' => 'YOUR_LINODE_SECRET_KEY',
'bucket' => 'my-bucket-name',
'region' => 'us-east-1',
) ) );
Learn how to add this custom code to your WordPress website
Set the region value to match your bucket's cluster. Common regions include us-east-1 (Newark), eu-central-1 (Frankfurt), ap-south-1 (Singapore), us-southeast-1 (Atlanta), and us-ord-1 (Chicago).
CORS Configuration
If images aren't loading in the WordPress admin but work fine on the frontend of your site, your bucket likely needs CORS (Cross-Origin Resource Sharing) headers. This allows the browser to load images from Linode Object Storage when you're managing galleries in WordPress.
In the Linode Cloud Manager, go to Object Storage, select your bucket, then go to the CORS tab. Add a rule:
- Origin:
* - Methods:
GET,HEAD
Using * for the origin is safe here since these are publicly accessible images.
Troubleshooting
Region mismatch errors
Make sure the region you select in Sunshine matches the cluster where your bucket was created in the Linode Cloud Manager. If they don't match, you'll see connection errors.
Access denied
Verify your access key has read and write permissions on the bucket. If you limited the key to specific buckets when creating it, make sure your bucket is included.
Still need help?
If you have not yet found your answer in the documentation articles, please contact support