Infrastructure Requirements
[
'title' => 'amppackager Binary',
'description' => 'Go binary installation required',
'status' => $sxg_status['amppackager_binary'] ?? false,
'docs' => 'https://github.com/ampproject/amppackager'
],
'certificate_authority' => [
'title' => 'Supported SSL Certificate',
'description' => 'Certificate from supported CA (Let\'s Encrypt, DigiCert, etc.)',
'status' => $sxg_status['certificate_valid'] ?? false,
'docs' => 'https://amp.dev/documentation/guides-and-tutorials/optimize-and-measure/signed-exchange/#certificates'
],
'server_control' => [
'title' => 'Edge Server Control',
'description' => 'Ability to control HTTP headers at server level',
'status' => $sxg_status['server_control'] ?? false,
'docs' => 'https://amp.dev/documentation/guides-and-tutorials/optimize-and-measure/signed-exchange/#server-requirements'
],
'network_connectivity' => [
'title' => 'Network Access',
'description' => 'Outgoing requests to CA, publisher, cdn.ampproject.org',
'status' => $sxg_status['network_connectivity'] ?? false,
'docs' => null
]
];
foreach ($requirements as $key => $requirement): ?>
WordPress-Level Preparation
This plugin can prepare your WordPress site for SXG, but cannot implement the full SXG infrastructure.
Environment Testing
Test if your server environment can run amppackager binary before proceeding with setup.
amppackager Binary Upload
Upload the amppackager binary to run locally (avoids security concerns of automatic downloads).
Setting Up Full SXG Support
1. Server Requirements
- Linux server with root access (not shared hosting)
- Go runtime environment installed
- Ability to configure web server (Apache/Nginx)
- SSL certificate from supported CA
2. Install amppackager
# Download and install amppackager
wget https://github.com/ampproject/amppackager/releases/download/latest/amppackager
chmod +x amppackager
sudo mv amppackager /usr/local/bin/
# Create config directory
sudo mkdir -p /etc/amppackager
3. Configure Web Server
Configure your web server to:
- Vary responses on
Accept and AMP-Cache-Transform headers
- Proxy SXG requests to amppackager
- Serve different content for the same URL based on headers
4. Maintenance
- Update amppackager every 6 weeks
- Monitor certificate expiration
- Ensure persistent storage for amppackager instances
Compatible Hosting Solutions
✅ VPS/Dedicated Servers
Full control over server configuration
- DigitalOcean
- Linode
- AWS EC2
- Google Cloud
⚠️ Managed WordPress
May require hosting provider support
- WP Engine (contact support)
- Kinsta (enterprise plans)
- Pantheon (custom)
❌ Shared Hosting
Cannot install binaries or control headers
- Most shared hosting providers
- Blogger
- WordPress.com