SlideShare a Scribd company logo
1 of 28
Download to read offline
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
WordPress and Reverse Proxy
How WordPress can integrate with enterprise websites
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
About Me
Solutions Engineer @ WP Engine
Front End Dev
Agencies, Publishing, Ad Tech
Edmund Turbin
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
What is a Proxy
I make a request
proxy gets what I asked for
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Forward Proxy
client makes request to proxy
proxy gets request from server
proxy returns request
caches request
Intermediary assocated with the client
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Proxy
The cloud
FORWARD PROXY
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Reverse Proxy
client makes request
external proxy
returns cached request
or, gets request from server
Intermediary assocated with the server
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Varnish
The cloud
CACHING DIAGRAMServer
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Why Reverse Proxy?
Not on the same network
custom application
Legacy system transition
Users restricted to system by role
Two systems on the same domain
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Reverse Proxy and WordPress
WordPress to handle content
external system to integrate seamlessly
same domain
users will not be able to tell they’re on two systems
How does this apply to WordPress?
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Enterprise WordPress
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Enterprise WordPress
What makes WordPress enterprise ready?
Scalability
Security
Complex Integrations
Multilingual Support
SSO / Access Control
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Enterprise WordPress
Who’s Using WordPress in enterprise?
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Enterprise WordPress
Large community
No license costs
Extensible - Many integrations
Stable, actively maintained, trusted
Simple for users, content creators
What are the benefits?
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Enterprise WordPress
No support
Awareness in enterprise market
What are the challenges?
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Solutions
Proxy pass from WordPress
Proxy pass from external website
CDN based solution
Subdomains
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Requirements
Proxy Pass to/from WordPress
Block requests from other servers
Update links to reflect site structure
wp-config.php
plugin
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Whitelist IP
Allow access from only a single IP
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
nginx
PROXY PASS
if URL matches:
fetch content from other server
location /some/site {
proxy_pass http://127.0.0.1;
}
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
wp-config
define('WP_HOME','http://site.com/subfolder/');
define('WP_SITEURL','http://site.com/subfolder/');
$_SERVER['REQUEST_URI'] = '/subfolder' . $_SERVER['REQUEST_URI'];
$_SERVER['SCRIPT_NAME'] = '/subfolder' . $_SERVER['SCRIPT_NAME'];
$_SERVER['PHP_SELF'] = '/subfolder' . $_SERVER['PHP_SELF'];
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
WordPress Reverse Proxy
The cloud
App 1
App 2site.com/blog
site.com/app
site.com
REVERSE PROXY 1
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
WordPress Load Balancer
The cloud
App 1
App 2site.com/blog
site.com/app
site.com
REVERSE PROXY 2
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Simpler Solutions
3rd party DNS level split
Requests will not pass through additional infrastructure
If issues arise, troubleshooting is narrowed down
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Content Delivery Networks
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
WordPress Load Balancer
The cloud
App 1
App 2site.com/blog
site.com/app
site.com
REVERSE PROXY 3
CDN
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
Subdomains
Simple solution
Create subdomain with your domain registrar
Forward the subdomain to new site
Mask the domain so that the original URL displays
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
WordPress Load Balancer
The cloud
App 1
App 2blog.site.com
site.com/app
site.com
REVERSE PROXY 4
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
The Future
Couldn’t we just use the REST API?
Edmund Turbin - Solutions Engineer
edmund.turbin@wpengine.com
@spicecadet
edmundturbin.com
edmund.turbin@wpengine.com
twitter:
web:
email:

More Related Content

More from Edmund Turbin

Production Ready WordPress - WC Utrecht 2017
Production Ready WordPress  - WC Utrecht 2017Production Ready WordPress  - WC Utrecht 2017
Production Ready WordPress - WC Utrecht 2017Edmund Turbin
 
Production ready word press
Production ready word pressProduction ready word press
Production ready word pressEdmund Turbin
 
The Themer's Guide to WP-CLI
The Themer's Guide to WP-CLIThe Themer's Guide to WP-CLI
The Themer's Guide to WP-CLIEdmund Turbin
 
Configuration Management in WordPress
Configuration Management in WordPressConfiguration Management in WordPress
Configuration Management in WordPressEdmund Turbin
 
The Themer's Guide to WP-CLI
The Themer's Guide to WP-CLIThe Themer's Guide to WP-CLI
The Themer's Guide to WP-CLIEdmund Turbin
 
Theming in WordPress - Where do I Start?
Theming in WordPress - Where do I Start?Theming in WordPress - Where do I Start?
Theming in WordPress - Where do I Start?Edmund Turbin
 
Word press gets responsive 4x3
Word press gets responsive 4x3Word press gets responsive 4x3
Word press gets responsive 4x3Edmund Turbin
 
Scaling WooCommerce on WP Engine
Scaling WooCommerce on WP EngineScaling WooCommerce on WP Engine
Scaling WooCommerce on WP EngineEdmund Turbin
 
Just For You - How to drive better engagement with localisation-based insights.
Just For You - How to drive better engagement with localisation-based insights.Just For You - How to drive better engagement with localisation-based insights.
Just For You - How to drive better engagement with localisation-based insights.Edmund Turbin
 

More from Edmund Turbin (10)

Production Ready WordPress - WC Utrecht 2017
Production Ready WordPress  - WC Utrecht 2017Production Ready WordPress  - WC Utrecht 2017
Production Ready WordPress - WC Utrecht 2017
 
Production ready word press
Production ready word pressProduction ready word press
Production ready word press
 
The Themer's Guide to WP-CLI
The Themer's Guide to WP-CLIThe Themer's Guide to WP-CLI
The Themer's Guide to WP-CLI
 
Configuration Management in WordPress
Configuration Management in WordPressConfiguration Management in WordPress
Configuration Management in WordPress
 
The Themer's Guide to WP-CLI
The Themer's Guide to WP-CLIThe Themer's Guide to WP-CLI
The Themer's Guide to WP-CLI
 
Customize it.
Customize it.Customize it.
Customize it.
 
Theming in WordPress - Where do I Start?
Theming in WordPress - Where do I Start?Theming in WordPress - Where do I Start?
Theming in WordPress - Where do I Start?
 
Word press gets responsive 4x3
Word press gets responsive 4x3Word press gets responsive 4x3
Word press gets responsive 4x3
 
Scaling WooCommerce on WP Engine
Scaling WooCommerce on WP EngineScaling WooCommerce on WP Engine
Scaling WooCommerce on WP Engine
 
Just For You - How to drive better engagement with localisation-based insights.
Just For You - How to drive better engagement with localisation-based insights.Just For You - How to drive better engagement with localisation-based insights.
Just For You - How to drive better engagement with localisation-based insights.
 

Recently uploaded

Company Snapshot Theme for Business by Slidesgo.pptx
Company Snapshot Theme for Business by Slidesgo.pptxCompany Snapshot Theme for Business by Slidesgo.pptx
Company Snapshot Theme for Business by Slidesgo.pptxMario
 
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书rnrncn29
 
SCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is prediSCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is predieusebiomeyer
 
IP addressing and IPv6, presented by Paul Wilson at IETF 119
IP addressing and IPv6, presented by Paul Wilson at IETF 119IP addressing and IPv6, presented by Paul Wilson at IETF 119
IP addressing and IPv6, presented by Paul Wilson at IETF 119APNIC
 
Cybersecurity Threats and Cybersecurity Best Practices
Cybersecurity Threats and Cybersecurity Best PracticesCybersecurity Threats and Cybersecurity Best Practices
Cybersecurity Threats and Cybersecurity Best PracticesLumiverse Solutions Pvt Ltd
 
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书rnrncn29
 
Unidad 4 – Redes de ordenadores (en inglés).pptx
Unidad 4 – Redes de ordenadores (en inglés).pptxUnidad 4 – Redes de ordenadores (en inglés).pptx
Unidad 4 – Redes de ordenadores (en inglés).pptxmibuzondetrabajo
 
ETHICAL HACKING dddddddddddddddfnandni.pptx
ETHICAL HACKING dddddddddddddddfnandni.pptxETHICAL HACKING dddddddddddddddfnandni.pptx
ETHICAL HACKING dddddddddddddddfnandni.pptxNIMMANAGANTI RAMAKRISHNA
 
TRENDS Enabling and inhibiting dimensions.pptx
TRENDS Enabling and inhibiting dimensions.pptxTRENDS Enabling and inhibiting dimensions.pptx
TRENDS Enabling and inhibiting dimensions.pptxAndrieCagasanAkio
 

Recently uploaded (9)

Company Snapshot Theme for Business by Slidesgo.pptx
Company Snapshot Theme for Business by Slidesgo.pptxCompany Snapshot Theme for Business by Slidesgo.pptx
Company Snapshot Theme for Business by Slidesgo.pptx
 
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
『澳洲文凭』买詹姆士库克大学毕业证书成绩单办理澳洲JCU文凭学位证书
 
SCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is prediSCM Symposium PPT Format Customer loyalty is predi
SCM Symposium PPT Format Customer loyalty is predi
 
IP addressing and IPv6, presented by Paul Wilson at IETF 119
IP addressing and IPv6, presented by Paul Wilson at IETF 119IP addressing and IPv6, presented by Paul Wilson at IETF 119
IP addressing and IPv6, presented by Paul Wilson at IETF 119
 
Cybersecurity Threats and Cybersecurity Best Practices
Cybersecurity Threats and Cybersecurity Best PracticesCybersecurity Threats and Cybersecurity Best Practices
Cybersecurity Threats and Cybersecurity Best Practices
 
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
『澳洲文凭』买拉筹伯大学毕业证书成绩单办理澳洲LTU文凭学位证书
 
Unidad 4 – Redes de ordenadores (en inglés).pptx
Unidad 4 – Redes de ordenadores (en inglés).pptxUnidad 4 – Redes de ordenadores (en inglés).pptx
Unidad 4 – Redes de ordenadores (en inglés).pptx
 
ETHICAL HACKING dddddddddddddddfnandni.pptx
ETHICAL HACKING dddddddddddddddfnandni.pptxETHICAL HACKING dddddddddddddddfnandni.pptx
ETHICAL HACKING dddddddddddddddfnandni.pptx
 
TRENDS Enabling and inhibiting dimensions.pptx
TRENDS Enabling and inhibiting dimensions.pptxTRENDS Enabling and inhibiting dimensions.pptx
TRENDS Enabling and inhibiting dimensions.pptx
 

Reverse proxy and WordPress

  • 1. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com WordPress and Reverse Proxy How WordPress can integrate with enterprise websites
  • 2. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com About Me Solutions Engineer @ WP Engine Front End Dev Agencies, Publishing, Ad Tech Edmund Turbin
  • 3. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com What is a Proxy I make a request proxy gets what I asked for
  • 4. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Forward Proxy client makes request to proxy proxy gets request from server proxy returns request caches request Intermediary assocated with the client
  • 5. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Proxy The cloud FORWARD PROXY
  • 6. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Reverse Proxy client makes request external proxy returns cached request or, gets request from server Intermediary assocated with the server
  • 7. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Varnish The cloud CACHING DIAGRAMServer
  • 8. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Why Reverse Proxy? Not on the same network custom application Legacy system transition Users restricted to system by role Two systems on the same domain
  • 9. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Reverse Proxy and WordPress WordPress to handle content external system to integrate seamlessly same domain users will not be able to tell they’re on two systems How does this apply to WordPress?
  • 10. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Enterprise WordPress
  • 11. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Enterprise WordPress What makes WordPress enterprise ready? Scalability Security Complex Integrations Multilingual Support SSO / Access Control
  • 12. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Enterprise WordPress Who’s Using WordPress in enterprise?
  • 13. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Enterprise WordPress Large community No license costs Extensible - Many integrations Stable, actively maintained, trusted Simple for users, content creators What are the benefits?
  • 14. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Enterprise WordPress No support Awareness in enterprise market What are the challenges?
  • 15. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Solutions Proxy pass from WordPress Proxy pass from external website CDN based solution Subdomains
  • 16. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Requirements Proxy Pass to/from WordPress Block requests from other servers Update links to reflect site structure wp-config.php plugin
  • 17. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Whitelist IP Allow access from only a single IP
  • 18. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com nginx PROXY PASS if URL matches: fetch content from other server location /some/site { proxy_pass http://127.0.0.1; }
  • 19. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com wp-config define('WP_HOME','http://site.com/subfolder/'); define('WP_SITEURL','http://site.com/subfolder/'); $_SERVER['REQUEST_URI'] = '/subfolder' . $_SERVER['REQUEST_URI']; $_SERVER['SCRIPT_NAME'] = '/subfolder' . $_SERVER['SCRIPT_NAME']; $_SERVER['PHP_SELF'] = '/subfolder' . $_SERVER['PHP_SELF'];
  • 20. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com WordPress Reverse Proxy The cloud App 1 App 2site.com/blog site.com/app site.com REVERSE PROXY 1
  • 21. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com WordPress Load Balancer The cloud App 1 App 2site.com/blog site.com/app site.com REVERSE PROXY 2
  • 22. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Simpler Solutions 3rd party DNS level split Requests will not pass through additional infrastructure If issues arise, troubleshooting is narrowed down
  • 23. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Content Delivery Networks
  • 24. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com WordPress Load Balancer The cloud App 1 App 2site.com/blog site.com/app site.com REVERSE PROXY 3 CDN
  • 25. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com Subdomains Simple solution Create subdomain with your domain registrar Forward the subdomain to new site Mask the domain so that the original URL displays
  • 26. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com WordPress Load Balancer The cloud App 1 App 2blog.site.com site.com/app site.com REVERSE PROXY 4
  • 27. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com The Future Couldn’t we just use the REST API?
  • 28. Edmund Turbin - Solutions Engineer edmund.turbin@wpengine.com @spicecadet edmundturbin.com edmund.turbin@wpengine.com twitter: web: email: