- ฉันเปลี่ยน URL พื้นฐานและตอนนี้เว็บไซต์ของฉันไม่สามารถเข้าถึงได้
- ฉันย้ายทุกอย่างไปยังเซิร์ฟเวอร์ใหม่ไม่ได้เปลี่ยน base_url และเว็บไซต์ของฉันไม่สามารถเข้าถึงได้
ฉันจะเปลี่ยนหรือคืนค่า base_url การตั้งค่า BaseURL ของฉันได้อย่างไร
ฉันจะเปลี่ยนหรือคืนค่า base_url การตั้งค่า BaseURL ของฉันได้อย่างไร
คำตอบ:
อาการ:ฉันเปลี่ยน URL พื้นฐานและตอนนี้เว็บไซต์ของฉันไม่สามารถเข้าถึงได้หรือฉันย้ายทุกอย่างไปยังเซิร์ฟเวอร์ใหม่ไม่ได้เปลี่ยนbase_urlและเว็บไซต์ของฉันไม่สามารถเข้าถึงได้
คำแนะนำสำหรับเว็บไซต์ "หนึ่งร้านค้า" ที่เรียบง่ายซึ่งมีการตั้งค่า "มุมมองร้านค้าเริ่มต้น" เพื่อรับการตั้งค่าจาก "ค่าเริ่มต้น" จะมีอินสแตนซ์เพิ่มเติมของแถวตารางที่กล่าวถึงด้านล่างสำหรับUse Websiteช่องทำเครื่องหมายที่ไม่ได้ทำเครื่องหมาย
เปิดcore_config_dataตารางของคุณใน phpMyAdmin
จัดเรียงตารางตามpathคอลัมน์และค้นหาแถวต่อไปนี้สำหรับส่วนที่ไม่ปลอดภัยของคุณพวกเขาควรมีลักษณะดังต่อไปนี้:
คอลัมน์
PATH                         VALUE
web/unsecure/base_url        http://www.example.com/
web/unsecure/base_link_url   {{unsecure_base_url}}
web/unsecure/base_skin_url   {{unsecure_base_url}}skin/
web/unsecure/base_media_url  {{unsecure_base_url}}media/
web/unsecure/base_js_url     {{unsecure_base_url}}js/แทนที่http://www.example.com/ด้วย URL โดเมนของคุณที่เหมาะสม (ต่อท้ายเฉือนจำเป็น) และถ้าคุณได้ติดตั้งในโฟลเดอร์ย่อยผนวกกับ/หลังจากที่มัน
ค้นหาแถวต่อไปนี้สำหรับส่วนที่ปลอดภัยของคุณซึ่งควรมีลักษณะดังต่อไปนี้:
คอลัมน์
PATH                        VALUE
web/secure/base_url         https://www.example.com/
web/secure/base_link_url    {{secure_base_url}}
web/secure/base_skin_url    {{secure_base_url}}skin/
web/secure/base_media_url   {{secure_base_url}}media/
web/secure/base_js_url      {{secure_base_url}}js/แทนที่https://www.example.com/ด้วย URL โดเมนของคุณที่เหมาะสม (ต่อท้ายเฉือนจำเป็น) และถ้าคุณได้ติดตั้งในโฟลเดอร์ย่อยผนวกกับ/หลังจากที่มัน หากคุณยังไม่ได้รับใบรับรองความปลอดภัยและเปิดใช้งาน TLS / SSL ให้ใช้httpแทนhttps
เนื้อหาชัดเจนจากvar/cache, ไดเรกทอรีหลังจากเปลี่ยนvar/sessionbase_urls
การล้างแคชและเซสชันเป็นสิ่งจำเป็นเนื่องจากการกำหนดค่าของคุณถูกแคชและการล้างจะบังคับให้อ่านข้อมูลการกำหนดค่าจากcore_config_dataตารางและสร้างเซสชันใหม่ด้วยข้อมูลที่ถูกต้อง
หมายเหตุ:หากคุณตั้งค่าไว้base_urlถูกต้องweb/unsecure/base_urlและweb/secure/base_urlคุณไม่ต้องยุ่งกับการเปลี่ยน{{UNSECURE_BASE_URL}}และ{{SECURE_BASE_URL}}มาโครในรายการที่เหลือ
mysql -u $USER -p $DBASE
http://www.example.com/และรักษาความปลอดภัยhttps://www.example.com/(ถ้าคุณมี SSL / TLS เปิดการใช้งานอื่น ๆ ที่ควรจะเป็น https http) ที่มี URL โดเมนของคุณที่เหมาะสม (ต่อท้ายเฉือนจำเป็น) และถ้าคุณได้ติดตั้งในโฟลเดอร์ย่อยผนวกกับ/หลังจากที่มันคำสั่ง SQL
UPDATE core_config_data SET value = 'http://www.example.com/' WHERE path LIKE 'web/unsecure/base_url';
UPDATE core_config_data SET value = 'https://www.example.com/' WHERE path LIKE 'web/secure/base_url';คำสั่ง SQL
SELECT path,value FROM core_config_data WHERE path LIKE 'web/unsecure/base%';
SELECT path,value FROM core_config_data WHERE path LIKE 'web/secure/base%';var/cache, ไดเรกทอรีหลังจากเปลี่ยนvar/session base_urlsการล้างแคชและเซสชันเป็นสิ่งจำเป็นเนื่องจากการกำหนดค่าของคุณถูกแคชและการล้างจะบังคับให้อ่านข้อมูลการกำหนดค่าจากcore_config_dataตารางและสร้างเซสชันใหม่ด้วยข้อมูลที่ถูกต้องn98-magerunให้ใช้คำสั่งn98-magerun.phar sys:infoเพื่อรับรายการข้อมูลระบบพื้นฐานโดยมีหนึ่งไอเท็มเป็นCache Directoryตำแหน่ง
                    ใน Magento2 ยังมีวิธีทำโดยตรงผ่าน Magento โดยใช้คำสั่งด้านล่างแทนที่จะต้องผ่าน SQL ซึ่งฉันพบว่าเร็วขึ้นเล็กน้อย
ภายในไดเรกทอรีรากของ Magento ทำงานด้านล่างคำสั่ง
ตั้งค่าURL ที่ไม่ปลอดภัย
bin/magento setup:store-config:set --base-url="http://www.magento2.com/"ตั้งURL ที่ปลอดภัย
bin/magento setup:store-config:set --base-url-secure="https://www.magento2.com/"ล้างแคช
bin/magento cache:flush
var/ไดเรกทอรีถูกทำให้ยุ่งเหยิง Magento จะเก็บแคช Magento ไว้ใน/tmpไดเรกทอรีระบบตามที่ระบุไว้core_config_dataในที่นี้ สามารถลบแคชที่ไม่ถูกต้องของ Magento ได้