Control Panel Ինտեգրման Բարելավում
Ընդհանուր տեսքը
Enhance-ը ժամանակակից կառավարման վահան է, որը հզոր հոස්թինգի ավտոմատացման և կառավարման հնարավորություններ է ապահովում։ Այս ինտեգրումը թույլ է տալիս ավտոմատ դոմենային սինխրոնիզացիա և SSL վկայագրականների կառավարում Ultimate Multisite-ի և Enhance Control Panel-ի միջև։
Կապված քննարկում: Համայնքի խորհուրդներ և լրացուցիչ տեղեկություն ստանալու համար බලන්න GitHub Քննարկում #265։
Առանձնահատկություններ
- Ultimate Multisite-ում դոմենները քարտեզագրված լինելիս ավտոմատ դոմենային սինխրոնիզացիա
- DNS-ը լուծվող դեպքում LetsEncrypt-ով ավտոմատ SSL վկայագրականների տրամադրում
- ցանցերի համար ենթադիր անուններ (subdomain)՝ աշխատող ցանցերի համար, որոնք գործում են subdomain ռեժիմով
- քարտեզագրումները ջնջելիս դոմենի հեռացում
- API մուտքի ստուգում՝ API տվյալների վավերականության համար
Требования
Համակարգային պահանջներ
- Տեղադրված և հասանելի Enhance Control Panel
- WordPress Multisite տեղադրված կամ կապված Enhance սերվերի հետ
- Apache වෙබ් սերվեր (Enhance-ը ներկայում աջակցում է Apache կոնֆիգուրացիաներին; LiteSpeed Enterprise-ը հասանելի է նվազեցված գնով)
API Մուտք
Դուք պետք է ունենաք Enhance Control Panel-ի վրա ադմինիստրատոր մուտք, որպեսզի ստեղծեք API token-ներ։
Ձեր API Տվյալների Ստացումը
1. API Token Ստեղծել
- Մուտք գործեք ձեր Enhance Control Panel-ը որպես ադմինիստրատոր
- Կանոնավոր մենյուի մեջ սեղմեք Settings (Կարգավորում) վրա
- Գնացեք Access Tokens (Մուտքի Token-ներ) դեպի
- Սեղմեք Create Token (Ստեղծել Token) վրա
- Տվյալները տվեք նկարագրական անուն (օրինակ՝ "Ultimate Multisite Integration")
- Բանորոշեք System Administrator (Системի ադմինիստրատոր) դերը
- Ավարտի ամսաթվի համար.
- Եթե ցանկանում եք, որ token-ը երբեք չվավերանա՝ թողեք այն դատարկ։
- Կա մ սահմանեք հատուկ վավերականության ամսաթիվ անվտանգության նպատակներով։
- Սեղմեք Create (Ստեղծել)
Ստեղծելուց հետո կհայտնվեն ձեր Access Token-ը և Organization ID-ն։ Պահպանեք դրանք անմիջապես, քանի որ token-ը միայն մեկ անգամ է ցուցվում։
2. Ստացեք ձեր Organization ID-ն (Կազմակերպության ID)
Organization ID-ն հայտնվում է Access Tokens-ի էջում այն կապույտ տեղեկատվական բաժնում, որը վերնագրված է «Org ID: {your_id}»։
Organization ID-ն ձևավորվում է UUID-ի նման՝ d8554b6d-5d0d-6719-009b-fec1189aa8f3։
Դուք կարող եք հաճախորհի Organization ID-ն գտնել հետևյալ կերպ.
- Գնացեք Customers էջը։
- Ընտրվող հաճախորդի համար սեղմեք Manage customer (Կառավարել հաճախորհին)։
- Դիտեք URL-ը՝ Organization ID-ն
/customers/-ից հետո գտնվում է թվանշաններով և տառերով։
3. Ստացեք ձեր Server ID-ն (Սերվերի ID)
Ձեր Server ID-ն (որը անհրաժեշտ է Դոմենի գործողությունների համար) գտնելու համար.
- Enhance Control Panel-ում գնացեք Servers (Սերվերներ)։
- Սեղմեք այն սերվերի վրա, որտեղ տեղադրված է ձեր WordPress-ը։
- Server ID-ն (UUID ձևաչափով) կհայտնվի URL-ում կամ սերվերի մանրամասներում։
- Տարբերակապես, կարող եք օգտագործել API՝ սերվերները թվարկելու համար.
curl -s -X GET https://your-enhance-panel.com/api/servers \
-H "Accept: application/json" \
-H "Authorization: Bearer YOUR_TOKEN" | jq
Server ID-ն հետևում է UUID ձևաչափին՝ 00000000-0000-0000-0000-000000000000։
4. Ստացեք ձեր API URL-ը
Ձեր API URL-ը ձեր Enhance Control Panel-ի URL-ն է՝ /api/-ով վերջում ավելացված.
https://your-enhance-panel.com/api/
Կարևոր է. Այս /api/ ուղին պարտադիր է։ Հաճախ հանդիպող սխալները հետևյալն են.
- Ոչ
/api/-ով միայն Դոմենը օգտագործելը։ - HTTP-ի փոխարեն HTTPS-ի օգտագործումը (Անվտանգության համար անհրաժեշտ է HTTPS)։
Կազմաձևում (Configuration)
Անհրաժեշտ հաստատուններ (Required Constants)
Այս հետևյալ հաստատունները ավելացրեք ձեր wp-config.php ֆայլին.
// Control Panel Ինտեգրացիան Բարելավում define('WU_ENHANCE_API_TOKEN', 'your-bearer-token-here'); define('WU_ENHANCE_API_URL', 'https://your-enhance-panel.com/api/'); define('WU_ENHANCE_SERVER_ID', 'your-server-uuid-here');
Ինտեգրացիայով Կարգավորում
- WordPress-ի ադմին (admin) մեջ գնացեք Ultimate Multisite > Settings-ին։
- Գնացեք Integrations տաբինին։
- Գտեք Enhance Control Panel Integration և սեղմեք Configuration-ի վրա։
- Վիզարդը ձեզ կուղղորդի կարգավորման ընթացքում.
- Քայլ 1: Ներածություն և հնարավորությունների ամփոփում
- Քայլ 2: Մուտքագրեք ձեր API տվյալները (Token, API URL, Server ID)
- Քայլ 3: Ստուգեք կապը
- Քայլ 4: Գնահատեք և ակտիվացրեք
Դուք կարող եք ընտրել հետևյալը.
- Թույլ տալ վիզարդին ավտոմատ կերպով ներարկել հաստատունները (constants) ձեր
wp-config.phpֆայլում։ - Պատճենել հաստատունների սահմանումները և ձեռքով ավելացնել դրանք։
Ավելի WordPress Կարգավորումներ
Համայնքի հետ կապված արձագանքների ([Discussion #265]) համաձայն, կարող է անհրաժեշտ լինի այս լրացուցիչ կարգավորումներ կատարել.
.htaccess Կարգավորում
Եթե դուք խնդիրներ եք հանդիպում տիրույթների քարտեզագրման հետ.
- Հեռացրեք Enhance-ի սկզբնական
.htaccessֆայլը։ - Այն փոխարինեք ստանդարտ WordPress Multisite
.htaccessֆայլով։
Cookie Հաստատուններ (Constants)
Այս հաստատունները ավելացրեք wp-config.php-ի մեջ՝ համապատասխան տիրույթների համար cookie-ի ճիշտ մշակումը ապահովելու համար.
define('COOKIE_DOMAIN', $_SERVER['HTTP_HOST']);
define('COOKIEPATH', '/');
define('ADMIN_COOKIE_PATH', '/');
Ինչպես աշխատում է
Երբ Տիրույթը Կարտեզագրվում է (When a Domain is Mapped)
- Օգտվողը Ultimate Multisite- ում կապում է սեփական տիրույթ (custom domain) կամ ստեղծում նոր կայք ենթադարի անունով (subdomain mode):
- Ինտեգրացիան ուղարկում է POST հարցում Enhance-ի API-ին՝
/servers/{server_id}/domains։ - Enhance-ը տիրույթը ավելացնում է ձեր սերվերի կոնֆիգուրացիայի մեջ:
- Երբ DNS-ը լուծվում է ձեր սերվերի վրա, Enhance-ը ավտոմատ կերպով տրամադրում է SSL վկայագիր LetsEncrypt-ի միջոցով:
- Տիրույթը դառնում է ակտիվ HTTPS-ով։
Երբ Տիրույթը Հեռացվում է
- Ultimate Multisite-ում ջնջվում է տիրույթի կապը (domain mapping):
- Ինտեգրացիան հարցում է Enhance-ին՝ տիրույթի ID-ն գտնելու համար:
- ուղարկվում է DELETE հարցում՝
/servers/{server_id}/domains/{domain_id}վրա: - Enhance-ը տիրույթը հանում է ձեր սերվերի կոնֆիգուրացիայից:
DNS և SSL Ստուգումներ
Ultimate Multisite-ը ներառում է ներկառուցված DNS և SSL ստուգումներ.
- Դուք կարող եք կոնfigurացնել ստու գման միջակայքը Domain Mapping Settings-ում (սովորական արժեքը՝ 300 վայրկյան/5 րոպե):
- Համակարգը DNS-ի տարածումը ստուգում է տիրույթը ակտիվ դարձնելուց առաջ:
- SSL վկայագրի վավերականությունը ստուգվում է ավտոմատ կերպով:
- Enhance-ը ավտոմատ կերպով մշակում է SSL-ի տրամադրումը, ուստի ձեռքով SSL-ի կոնֆիգուրացիա անելու կարիք չկա:
Սահմանագրության Հաստատում
Կապի Ստուգում
- Integration Wizard-ում օգտագործեք Test Connection քայլը:
- Պլագինը փորձում է ձեր սերվերի վրա տիրույթները թվարկել:
- Հաջողության հաղորդագրությունը հաստատում է.
- API գանձերը ճիշտ են
- API URL-ը մուտքելի է
- Server ID-ն վավեր է
- Թույլտվությունները ճիշտ են սահմանված
Տիրույթի Կապումից Առաջ
- Ultimate Multisite-ում կապեք փորձնական տիրույթ (test domain):
- Ստուգեք Ultimate Multisite-ի աղբողտիները (Ultimate Multisite > Logs > integration-enhance):
- Հաստատեք Enhance Control Panel-ում, որ տիրույթը ավելացվել է.
- Գնացեք Servers > Your Server > Domains
- Նոր տիրույթը պետք է հայտնվի ցուցակում
- Երբ DNS-ը տարածվի, ստուգեք, որ SSL-ը ավտոմատ կերպով տրամադրվել է
Խնդիրների լուծում
API միացման խնդիրներ
Սխալ՝ "Failed to connect to Enhance API" (Enhance API-ի հետ կապվելը ձախողվեց)
- Ստուգեք, թե արդյոք
WU_ENHANCE_API_URL-ը վերջում/api/պարունակում է։ - Համոզվեք, որ օգտագործում եք HTTPS, այլ ոչ HTTP։
- Ստուգեք, թե արդյոք Enhance պանելին հասանելի է ձեր WordPress սերվերից։
- Ստուգեք, որ կապը չեն արգելում firewall-ները։
Սխալ՝ "Enhance API Token not found" (Enhance API թոքենը գտնված չէ)
- Համոզվեք, որ
WU_ENHANCE_API_TOKEN-ը սահմանված էwp-config.phpֆայլում։ - Ստուգեք, որ թոքենը չի ջնջվել կամ ժամկետ չի անցել Enhance-ում։
- Ստուգեք թոքենի արժեքում սխալներ (typos)։
Սխալ՝ "Server ID is not configured" (Սերվերի ID-ն ճիշտ չէ)
- Համոզվեք, որ
WU_ENHANCE_SERVER_ID-ը սահմանված էwp-config.phpֆայլում։ - Համոզվեք, որ Server ID-ն վավեր UUID ձևաչափով է։
- Հաստատեք, որ սերվերը գոյություն ունի Enhance պանելում։
Դոմենը չի ավելացվել
Գործարկեք ֆայլերի տեսքով (logs):
- Գնացեք Ultimate Multisite > Logs-ի։
- Զտեք (Filter)՝ integration-enhance բառով։
- Փնտրեք սխալների հաղորդագրություն, որոնք վկայում են խնդրի մասին։
Ընդհանուր պատճառները.
- Անվավեր դոմենային անուն ձևաչափ։
- Դոմենը արդեն գոյություն ունի Enhance-ում։
- API թույլտվությունների բացակայություն (հ ամոզվեք, որ թոքենը System Administrator դերն ունի)։
- Server ID-ն չի համապատասխանում Enhance-ում գտնվող իրական սերվերին։
SSL ցուցադրման խնդիրներ (SSL Certificate Issues)
SSL-ի տեղադրումը չի կատարվում.
- Ստուգեք, թե արդյոք DNS-ը ուղղված է ձեր սերվերի IP հասցեին։
- Համոզվեք, որ դոմենը ճիշտ է լուծվում.
nslookup yourdomain.com - Enhance-ը պահանջում է, որ DNS-ը լուծվի նախքան SSL-ի տեղադրումը կատարելը։
- SSL-ի տեղադրումը սովորաբար տևում է 5-10 րոպե DNS-ի տարածման հետ։
- Ստուգեք Enhance Control Panel-ի logs-ը՝ SSL-ին հատուկ սխալների համար։
Enhance-ում ձեռքով SSL-ի խնդիրների լուծում.
- Գնացեք Servers > Your Server > Domains-ի։
- Գտեք ձեր դոմենը և ստուգեք դրա SSL-ի կարգավիճակը։
- Անհրաժեշտության դեպքում կարող եք ձեռքով գործարկել SSL-ի տեղադրումը (provisioning)։
DNS Ստուգման ինտերվալ
Եթե Դոմենները կամ SSL վկայականները շատ ժամանակ են ենթարկվում ակտիվացման համար.
- Գնացեք Ultimate Multisite > Settings > Domain Mapping (Դոմենային քարտեզագրում)
- Գտեք DNS Check Interval (DNS ստուգման միջակայքի) կարգավորումը։
- Փոխեք լռելյայն 300 վայրկյանից ցածր արժեքի (նվազագույնը՝ 10 վայրկյան)։
- Նշում. Ցածր միջակայքերը նշանակում են ավելի հաճախ ստուգումներ, բայց ավելի մեծ է սերվերի բեռը։
Հաստատման սխալներ (Authentication Errors)
HTTP 401/403 սխալներ.
- Վերանստացեք ձեր API token-ը Enhance-ում։
- Ստուգեք, որ տոկենը System Administrator դերը ունի։
- Համոզվեք, որ տոկենը չի ժամպել։
- Ապահովեք, որ օգտագործում եք ճիշտ Organization ID-ն (չնայած այն սովորաբար պահանջ չունի URL-ում)։
Գրանցումների վերլուծություն (Log Analysis)
Անջատեք մանրամասն լոգավորումը.
// Ավելացնել wp-config.php-ում բարելավված դեբագինգի համար
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
Այնուհետև ստուգեք լոգերը հետևյալ վայրերում.
- Ultimate Multisite լոգեր: Ultimate Multisite > Logs
- WordPress դեբագի լոգ:
wp-content/debug.log - Enhance պանելը լոգեր. Հասանելի է Enhance-ի ադմին інтерֆեյսում։
API Հղումներ (API Reference)
Հաստատում (Authentication)
Բոլոր API հարցումները օգտագործում են Bearer token հաստատում.
Authorization: Bearer YOUR_TOKEN_HERE