สำหรับการแก้ไข staging pbs ฉันทำงานในพื้นที่กับชื่อโดเมนจริงที่ผลิต แต่อยู่หลังพร็อกซีดังนั้นการติดตั้ง drupal และการกำหนดค่าเว็บเซิร์ฟเวอร์จะเหมือนกันอย่างเคร่งครัด (ในบางครั้งการฟัง IP อาจแตกต่างกันไป การผลิต)
ดังนั้นฉันมีพร็อกซีที่ตอบสนองต่อhttp: //mydomain.localพร็อกซีไปที่http: //www.mydomain.tldแต่บน IP ท้องถิ่น
วิธีใช้ nginx ใน vhost conf:
server_name mydomain.local;
set $proxied_server_name www.mydomain.tld;
set $proxied_cookie_domain mydomain.tld;
# then generic proxy conf
proxy_set_header Host $proxied_server_name;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# My param added for drupal absolute url construction
proxy_set_header X-Proxy-Host $host;
# For headers rewriting (Location or Refresh)
proxy_redirect http://$proxied_server_name/ http://$host/;
proxy_cookie_domain $proxied_server_name $host;
# and for drupal auth, with cookies without sub-domain
proxy_cookie_domain $proxied_cookie_domain $host;
สำหรับโฮสต์พร็อกซีเหมือนในการผลิต
server_name www.mydomain.tld;
และใน settings.php ของฉัน
if (isset($_SERVER['HTTP_X_PROXY_HOST'])) {
$base_url = 'http://' .$_SERVER['HTTP_X_PROXY_HOST'];
}
ด้วยความเชื่อมั่นนี้ฉันสามารถซิงค์ไฟล์ drupal ทั้งหมดและฐานข้อมูลและการกำหนดค่าเซิร์ฟเวอร์ระหว่างการติดตั้ง drupal จำนวนมาก (การพัฒนาและการผลิตในกรณีของฉัน แต่อาจเป็นสิ่งที่คุณต้องการ)