Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Greške
  • Bitrix multisite na različitim domenama. Bitrix virtualni stroj

Bitrix multisite na različitim domenama. Bitrix virtualni stroj

Najbolji članak, po mom mišljenju, na temu organiziranja više stranica u 1C-Bitrixu. Sve je vrlo jasno opisano.

Pa, počnimo s činjenicom da možete napraviti mnogo web stranica s jednom instalacijom Bitrixa (možete napraviti dvije web stranice bez kupnje dodatnih licenci), što znači da ćemo zatvoriti prvo pitanje: da biste postavili multisite, trebate instalirati Bitrix samo jednom.
Postoji prilično detaljan tečaj obuke koji opisuje dva načina postavljanja multisite-a.


Koju metodu trebam odabrati?

Postoji mišljenje da korisnik sam odabire najprikladniju multisite metodu, ali u stvarnosti izbor metode ovisi o postavkama sustava.

Prva metoda pretpostavlja (na mapama) da su stranice u istoj domeni, ali u različitim mapama. Pogodan je za izradu web stranica na različitim jezicima ili, na primjer, regionalnih web stranica jedne tvrtke.
Adrese stranica će izgledati ovako:

http://example.com/en
http://example.com/en

ili

http://example.com/
http://example.com/KGD
http://example.com/SPB

Ako su teme web stranica različite, očito ne možete bez postavljanja druge metode, kada se različite web stranice nalaze u različitim domenama, na primjer:

http://www.bitrixsoft.ru/
http://www.bitrixsoft.com/

Obje stranice rade na istoj kopiji proizvoda, ali to se ne pojavljuje izvana. Izgleda ljepše, ali zahtijeva malo više truda za postavljanje.
Posebno bih skrenuo pažnju da se u nastavku radi o radu na hostingu, kada sve postavke poslužitelja vrši administrator. Ako lokalno postavljate multisite, prvo morate konfigurirati virtualne web poslužitelje. To možete pogledati na službenoj web stranici Apachea (iu ruskom dijelu Interneta ima puno članaka na tu temu).

Sada nekoliko riječi o tome kako sustav određuje trenutno mjesto.
Otvorimo postavke stranice (Postavke - Postavke proizvoda - Stranice - Popis stranica):

Ovdje možete odrediti naziv domene i mapu web mjesta - ovo su glavne postavke za postavljanje multisitea, ostalo određuje prioritete.
Najprije sustav provjerava trenutnu domenu: domene se odabiru iz postavki svih stranica i uspoređuju s domenom na kojoj se korisnik nalazi. U ovom slučaju uspoređuje se samo desna strana do točke (tj. sve poddomene automatski pripadaju ovoj domeni). Na primjer, u postavkama je naznačeno
primjer.com
a korisnik je otvorio
www.example.com
uvjet će se smatrati ispunjenim. Ali ako otvori moj-primjer.com- ovo je druga domena, mora biti posebno naznačena u popisu naziva domena.
Ako nazivi domena nisu navedeni ili su iste domene navedene na različitim web-mjestima, tada se odluka vrši prema mapi web-mjesta. Imajte na umu da je ovo mapa u odnosu na korijen stranice (tj. staza u URL-u), a ne staza u datotečnom sustavu na poslužitelju.
Naknadno se identifikator stranice koristi za povezivanje predloška, ​​odabir vijesti, određivanje jezika itd.

Primjer:
U postavkama jednog mjesta navedena je mapa / , drugi /ru.
Prilikom otvaranja primjer.com/forum/poruke/ dolazimo do prve stranice pri otvaranju example.com/ru/forum/messages/- Na drugom.
U ovom slučaju bitrix mapa (koja sadrži jezgru proizvoda) nalazi se u korijenu, nigdje se ne kopira i na poslužitelju se ne vrše nikakve druge postavke. Sve je jasno i jednostavno.
Puno više pitanja i problema javlja se kod postavljanja multisite-a pomoću druge metode, kada trebamo opsluživati ​​nekoliko stranica u različitim domenama s jednom Bitrix instalacijom. Pogledajmo ovo detaljnije.

Više stranica korištenjem druge metode (mini KAKO)

Prvo moramo odlučiti što želimo dobiti. Pretpostavimo da imamo dvije domene:

primjer.com
primjer.net

Imaju različite korijenske mape (to jest, prilikom pristupa svakoj od njih otvaraju se datoteke iz različitih fizičkih mapa na poslužitelju). Postoji opcija kada se pristupom bilo kojoj domeni otvara ista mapa na poslužitelju (tu ćemo opciju razmotriti u nastavku), ali poželjnija je prva opcija.

Istovremeno bih želio skrenuti pozornost na sljedeće točke:


  • sve domene moraju upućivati ​​na jedan poslužitelj; opcija kada su različite domene konfigurirane na različitim hosterima je neprihvatljiva;
  • u našem slučaju (kada su korijenske mape domena različite) nije bitno imamo li različite domene druge razine ili poddomene iste domene (npr. games.example.com I primjer.com). Da budem precizniji, to uopće nije važno. Ono što bi nas zapravo trebalo zanimati je imaju li zajedničku korijensku mapu ili ne;
  • opcija kada je konfiguriran veliki broj poddomena koje se formiraju dinamički (npr. vasya.example.com, kolya.example.com itd.) općenito nije multisite u kontekstu našeg proizvoda, te se u skladu s tim smjernice za više stranica ovdje ne primjenjuju. Pogledajmo ovu opciju u nastavku. Grubo govoreći, Bitrix multisite je kada je nekoliko stranica konfigurirano na popisu stranica u postavkama proizvoda.
Zadatak: postavite više stranica koristeći drugu metodu na UNIX hostingu.

Korak po korak.

1. Instaliramo Bitrix na jednu od domena (nije bitno koju). Radi jasnoće, pretpostavljamo da ste instalirali proizvod na primjer.com. Za sada ne vršimo dodatne postavke.

2. Sada morate nabaviti istu kopiju za rad na drugoj domeni.
Vjerujemo da je javni dio stranica drugačiji (inače zašto bi nam trebale različite stranice?), pa će vam za drugu stranicu trebati samo jezgra proizvoda (mapa bitrix, Dobro Učitaj). Teoretski, ako ih jednostavno kopirate s prve stranice, to će raditi, ali to nam neće odgovarati (morali smo se nositi s takvim "multi-site").
Uzmimo dvije kopije kernela koje rade s istom bazom podataka; nakon ažuriranja jedne od njih, baza će se ažurirati, a druga stranica će prestati raditi (i osim toga, kopiranje kernela je protivno licenci).
Problem je riješen korištenjem simboličkih veza. Slikovito rečeno, link ima ulogu prečaca na radnoj površini, koji otvara program, ali nije sam program.
Vodič za više stranica preporučuje premještanje jezgre u zajedničku mapu podijeljeno, zatim napravite simbolične veze na svakoj stranici. Ovdje ću, radi lakše prezentacije, pojednostaviti ovaj korak i napraviti poveznicu s jedne stranice na drugu (s funkcionalne točke gledišta nema razlike).
Skicirao sam malu skriptu koja će pomoći u stvaranju simboličkih veza kada koristite samo ftp pristup poslužitelju:

Kodirati


Izrada poveznica na bitrix i upload mape

javljanje_pogreške(E_SVE & ~E_OBAVIJEST);
@ini_set("pogreške_prikaza",1);

ako ($_POST["put"])
$put = rtrim($_POST["put"],"/\\");
drugo
$path = "../site2/www";

ako ($_POST["stvori"])
{
if (preg_match("#^/#",$path))
$puni_put = $put;
drugo
$full_path = realpath($_SERVER["DOCUMENT_ROOT"]."/".$p ath);

Ako (file_exists($_SERVER["DOCUMENT_ROOT"]." /bitrix"))
$strError = "Bitrix mapa već postoji u trenutnoj mapi";
elseif (is_dir($full_path))
{
ako (je_dir($puni_put."/bitrix"))
{
if (symlink($path."/bitrix",$_SERVER["DOCUM ENT_ROOT"]."/bitrix"))
{
if(symlink($path."/uploa d",$_SERVER["DOCUMENT_ROOT"]."/upload"))
jeka " Simboličke veze uspješno kreirane";
drugo
$strError = "Nije moguće stvoriti vezu na mapu za učitavanje, molimo kontaktirajte administratora poslužitelja";
}
drugo
$strError = "Ne mogu stvoriti poveznicu na bitrix mapu, obratite se administratoru poslužitelja";

}
drugo
$strError = "Navedena staza ne sadrži bitrix mapu";
}
drugo
$strError = "Pogreška nevažeće staze ili prava pristupa";

Ako ($strError)
jeka " ".$strPogreška."
Izvorni put: ".$full_path;
}
?>


Put do mape koja sadrži bitrix i upload mape:

Skripta se mora učitati u korijensku mapu drugog mjesta (u našem slučaju, primjer.net), a zatim nakon pokretanja navedite put do korijenske mape prve stranice (ili mape podijeljeno, ako je jezgra u njemu).
Pretpostavimo da je prvo mjesto u mapi:

drugi:

Napišite skriptu u mapu /var/www/denis/example.net/www, u polje staze pišemo " ../../example.com/www" ili " /var/www/denis/example.com/www". Ako sve bude u redu, u fasciklu /var/www/denis/example.net/www pojavit će se potrebne simboličke veze.
U ovoj fazi mogu se pojaviti problemi:


  • nema dopuštenja za pisanje u trenutnu mapu;
  • Postoji sigurnosno ograničenje (open_basedir) koje sprječava korisnike dijeljenog hostinga da pristupe drugim stranicama.

Ako imate problema s ovom skriptom, trebate potražiti pomoć domaćinu.
Nakon što su veze stvorene, trebalo bi se dogoditi sljedeće: tip primjer.net/bitrix/admin, otvara se ploča za autorizaciju, unesite podatke administratora koji su navedeni prilikom instaliranja proizvoda na primjer.com i dolazimo do Bitrix administrativne ploče.
Budući da postoji jedna jezgra i jedna baza - administrativna ploča za obje stranice bit će ista(tj. jedno te isto).

Sada morate kopirati s prve stranice .pristup.php(kako biste imali pristup čitanju root particije, ako je potrebno, možete je ručno urediti, brišući sve osim $PERM["/"]["*"]="R";) I indeks.php(koji će biti naknadno uređen).

3. Postavljanje stranica.

Otvorite postavke za svaku stranicu ( Postavke - Postavke proizvoda - Stranice - Popis stranica), navedite u polju "Naziv domene:". primjer.com I primjer.net odnosno za prvo i drugo mjesto.
Zadnje što ovdje treba učiniti je navesti stazu na poslužitelju do korijenske mape svake web-lokacije (polje "Put do korijenske mape web-poslužitelja za ovu web-lokaciju:") tako da modul za upravljanje strukturom izgradi stablo datoteke za svaku stranicu (izbornik “Sadržaj”):
naznačiti /var/www/denis/example.com/www I /var/www/denis/example.net/www odnosno.

4. Provjera javnog dijela.

Ako je sve napravljeno kako treba, sada bi se trebale otvoriti različite stranice na različitim domenama. Da bismo to učinili, koristit ćemo najjednostavniju skriptu:

Kodirati





Spremimo ga u root obiju stranica kada pristupamo skripti u domeni primjer.com trebao bi biti prikazan identifikator (prikaz od dva slova) prvog u domeni primjer.net- identifikator drugog mjesta.

Svi. Problem je riješen.

Što ako je zajednička korijenska mapa?

To nije zgodno prvenstveno zato što dijelit će se javni dio stranica. Ali ako ne postoji druga opcija, možete konfigurirati multisite i ovdje. Samo da biste odvojili javni dio u korijenu stranice, morat ćete stvoriti mape za svaku stranicu i zapravo će uspjeti multisite prema prvoj metodi.

Sada ukratko korak po korak. Uvjeti problema su isti, ali ćemo pretpostaviti da domene primjer.com I primjer.net imaju jednu korijensku mapu /var/www/denis/primjer

1. Proizvod ugrađujemo u bilo koju domenu jednom.

2. Da biste odvojili javni dio, stvorite ga u mapi /var/www/denis/primjer mape com I neto. Ovdje kernel ima stazu /var/www/denis/example/bitrix za obje stranice i nema potrebe za stvaranjem simboličkih poveznica.

3. U postavkama web-mjesta sada trebate navesti mapu web-mjesta uz domenu: /com I /neto za prvo i drugo mjesto.

4. Izrađujemo indeksnu stranicu za stranicu prema primjeru iz tečaja. Ova stranica domene će odrediti trenutno mjesto i povezati odgovarajući javni dio. Samo za to bilo je potrebno odrediti domene u postavkama web mjesta. Evo koda skripte:

Kodirati

Postavljanje je završeno.

Mnogo poddomena na jednom mjestu

Na primjer, na web mjestu, nakon registracije, korisnici dobivaju vlastitu domenu obrasca korisnik.example.com. Prilikom pristupa takvoj domeni želimo otvoriti blog korisnika.

1. U ovoj situaciji, najbolje je koristiti odvojenu mapu korijenskog mjesta za sve poddomene od glavne. Slažemo se s domaćinom da za primjer.com otvara /var/www/denis/example.com, i za sve poddomene (osim www.example.com) korijenska mapa je /var/www/denis/blogs. Instalirajte Bitrix na primjer.com.

3. Stvorite indeksnu stranicu u mapi /var/www/denis/blogs, postavite komponentu na njega bitrix:blog.blog. Imajte na umu da ovo nije sveobuhvatna komponenta bloganja, već komponenta koja prikazuje sadržaj određenog bloga.

4. Na istoj stranici, prije spajanja komponente, ubacujemo kod koji će odrediti trenutni ID bloga koristeći sljedeći primjer:

Zaključak

Ispostavilo se da ima puno teksta, ali u stvarnosti nema baš puno akcija. Pokušao sam istaknuti glavna pitanja koja klijenti imaju u vezi s problemima s više stranica prilikom kontaktiranja tehničke podrške. Nadam se da će vam prezentacija pomoći da malo bolje shvatite problem i riješite probleme koristeći ovo znanje.

Mnoga mjesta

Rješavanje poslovnog problema prema općem načelu "svaki web resurs ima svoj sustav upravljanja" je neučinkovito; a posebno neučinkovito kada je kontrolni sustav svaki put drugačiji. Problemi koji se javljaju ovim pristupom su:

  1. Pretjerani financijski troškovi potrebni za kupnju ili razvoj sustava za upravljanje web stranicama.
  2. Različite ulazne točke u upravljanje web-stranicom, različito sučelje za upravljanje.
  3. Razni sustavi autorizacije i baze podataka korisnika web stranice.
  4. Raznovrsni oglasni prostor.
Kao rezultat toga, tvrtka ima decentralizaciju u upravljanju svojim web projektima. Pretjerani resursi se troše na izradu web rješenja, a rješavanje poslovnih problema na internetu kasni. Posjetitelji web projekata tvrtke također mogu imati neugodnosti u radu s njima.

1C-Bitrix predlaže promjenu ove situacije. Na svakom primjerku proizvoda možete stvoriti mnoge web stranice u skladu s primjenjivom shemom licenciranja.

Zašto je nastao potreba za stvaranjem sustava s više mjesta i što to uopće znači? Kako bih odgovorio na ovo pitanje, navest ću vam rječiti primjer našeg razgovora s klijentom.

Kontaktirala nas je izdavačka tvrtka za savjet oko odabira optimalnog rješenja. Voditelj odjela za internet rekao je da imaju 18 različitih web stranica koje rade istovremeno. I svaka stranica ima nekakav sustav za upravljanje sadržajem, nekakav mehanizam za upravljanje oglašavanjem, negdje postoji online trgovina sa svojim korisnicima. Većina projekata ima zasebne forume sa svojim korisničkim računima, ponegdje su statistike, blogovi...

“A sada zamislite”, kaže, moju proračunsku tablicu u Excelu, gdje spremam sve svoje lozinke za pristup ovoj rezervi! Pa dobro, uspjeli smo natjerati naše zaposlenike da pamte lozinke i rade s njima, ali ja ne mogu natjerati svoje klijente da tako rade?! Mi smo, zapravo, već izgubili kontrolu nad razvojnim procesom, nadogradnjom projekata, ne možemo otvarati nove projekte...
Trebam sustav koji ne samo da će kombinirati funkcionalnost koju trebam za jednu stranicu, već će također omogućiti da se sve stranice kombiniraju u jedan sustav upravljanja, s jedinstvenim sustavom autorizacije i sigurnosti, kada će se klijent trebati samo registrirati na bilo kojem stranica i moći će raditi sa svim ostalim stranicama. Prepoznat ćemo ga i ponuditi mu dodatne usluge.”

Razumijevajući ovaj problem, implementirali smo MULTI-SITE u sva izdanja softverskog proizvoda 1C-Bitrix: Site Management, počevši od verzije 4.0. Štoviše, svako izdanje našeg proizvoda (osim za "First Site" i "Start" uključuje licencu za neograničen broj stranica. To jest, na temelju izdanja "Business" možete kreirati nekoliko projekata ujedinjenih sustavom upravljanja, a jedan projekt može biti veliki portal, i drugo - velika internetska trgovina itd..

Zanimljivo, kako online prisutnost vaše tvrtke raste, broj vaših projekata stalno će se povećavati. A ako na jednom ili dva projekta još ne osjećate akutno probleme nedosljednosti, svaki će novi projekt udvostručiti složenost i troškove te usporiti vaš napredak ako vaši projekti u početku nisu spojeni u sustav s više mjesta.

Artem Ryabinkov, vodeći analitičar, koordinator projekta u 1C-Bitrixu


Tehnologija

Mjesta i slučajevi

Pod, ispod primjerak proizvoda znači kopiju "1C-Bitrix: Site Management" koju je kupio klijent, koristeći jednu bazu podataka s popisa DBMS-ova koje podržava proizvod.

Pod, ispod web stranica se shvaća kao kombinacija sljedećih pojmova:

  • Račun u zajedničkoj bazi podataka;
  • Javni dio stranice (datoteke i mape);
  • Postavke stranice.
Drugim riječima, web stranica je entitet kreiran u sustavu koji ima određeni skup podataka (sadržaj) i parametara (jezik, predložak dizajna, formati datuma i vremena). Podaci mogu biti jedinstveni unutar ove stranice (javni dio, pojedinačni informativni blokovi, web obrasci, ankete, forumi itd.) ili dijeljeni između više stranica.

Multisite tehnologija

Na svaku stranicu mora upućivati ​​određeni naziv domene ili skup naziva domena. Takva podudaranja navedena su u postavkama svake stranice. Nema ograničenja za nazive domena i mogućnosti adresiranja. Svaka nova kreirana web stranica može biti domena druge ili treće razine.

Dakle, sva su mjesta implementirana na temelju jedan primjerak proizvoda i koristiti jedna zajednička baza podataka. Ovo ima sljedeće neosporne prednosti:

  1. Jedinstveno sučelje za upravljanje proizvodima omogućuje upravljanje svim web projektima na jedinstven način s jedne točke: mijenjanje strukture, dodavanje sadržaja, upravljanje pravima pristupa itd.
  2. Jedinstveni sustav autorizacije i jedinstvena baza korisnika omogućuje korisniku da se registrira na jedan web projekt, a zatim koristi web servise i informacije na svim drugim resursima, u skladu sa svojim pravima.
  3. Jedinstveni sustav prikupljanja statistike kako za svaki projekt zasebno tako i za dobivanje sumarnih analitičkih podataka za sve projekte. Osim toga, zahvaljujući tehnologiji UserMultiSiteTransfer, izvedena prepoznavanje posjetitelja koji dolaze na različite stranice unutar konfiguracije s više stranica.
  4. Jedinstveni oglasni prostor koji omogućuje tvrtki ili privučenom oglašivaču upravljanje postavljanjem i prikazivanjem bannera s jednog mjesta. A zahvaljujući tehnologiji UserMultiSiteTransfer - prepoznajte posjetitelja i učinkovito koristiti prikaz bannera .

Ako je tvrtka razvila i poboljšala poslovne procese za upravljanje web stranicama: stvaranje i objavljivanje materijala, upravljanje oglašavanjem, anketama itd., Stvaranje novog web resursa neće dovesti do promjena u ovoj strukturi.

Stranice imaju jednu bazu podataka, pa ako ste implementirali uvoz/izvoz sa svojim korporativnim ili računovodstvenim sustavom, tada će podrška za više stranica biti transparentna za ovu funkcionalnost.

Multisite se može implementirati na dva glavna načina.

U prvom i najjednostavnijem čak nije potrebna konfiguracija web poslužitelja! Svaka web stranica u korijenskoj mapi web poslužitelja bit će smještena u poseban direktorij, na primjer /site1/ i /site2/. Postavke svake stranice označavaju nazive domena po kojima se trebaju vizualizirati, te pripadajući direktorij s javnim dijelom stranice. Kao rezultat toga, Bitrix će automatski povezati odgovarajuće skripte u tim imenicima, što će vizualizirati sadržaj.

Komplet za distribuciju softverskog proizvoda isporučuje se konfiguriran za rad u skladu s prvom metodom.

Druga tehnika vam omogućuje da odvojite javne dijelove web stranica što je više moguće. Da biste to učinili, trebate konfigurirati nekoliko virtualnih hostova (web poslužitelja) na web poslužitelju (Apache, IIS). Svaka stranica u sustavu dobiva svoj korijenski direktorij (Document Root), u kojem se nalazi njen javni dio. Ponekad svaka stranica može čak imati svoju IP adresu. Štoviše, ako u prvoj metodi proizvod sam određuje koju će stranicu spojiti na zadane nazive domena, tada će tu operaciju izvršiti web poslužitelj. Ovom implementacijom jezgra sustava je fizički smještena na jednom mjestu, recimo na glavnoj stranici (mape /bitrix/ i /upload/), a na ostalim stranicama prave se simbolične poveznice na te mape.

Stoga proizvod podržava mnoge metode i parametre za organiziranje više stranica. Prva je opcija vrlo prikladna ako se projekt nalazi na dijeljenom hostingu, kada nema pristupa postavkama poslužitelja ili je konfiguracija iznimno ograničena. Druga opcija se obično koristi na namjenskim poslužiteljima, a pruža maksimalnu izvedbu i jednostavnost postavljanja i konfiguriranja projekta.

Svaka opcija implementacije je apsolutno transparentna kako za posjetitelje web stranica tako i za internetske tražilice. Ne izvode se preusmjeravanja, što ne ometa ispravno indeksiranje svakog izvora od strane pretraživačkog robota.

Licenciranje

Standardni paket proizvoda uključuje licenca za neograničeni broj stranica (osim za licence “First Site” i “Start”). Kupnjom kopije 1C-Bitrix: Site Management možete besplatno stvoriti, na primjer, resurs na ruskom i engleskom jeziku ili korporativnu web stranicu i internetsku trgovinu.

Sve web stranice koje rade pod istom licencom moraju biti smještene na istom hostingu i koristiti jednu kopiju softverskog proizvoda 1C-Bitrix: Site Management.

  • Izrada web stranice s više jezičnih verzija
  • Razvoj mobilnih stranica
  • Izrada dodatnih web stranica za odjele i podružnice poduzeća
  • Izrada web stranice internet trgovine i njenog predstavništva

Osobitosti

  • Jedan temeljni proizvod
  • Jedna baza podataka
  • Jedan administrator za sve stranice
  • Tehnologija prijenosa autorizacije

Prijenos ovlaštenja

U postavkama glavnog modula označite okvir za distribuciju autorizacije na sve domene (na kartici autorizacija).

Multisite na jednoj domeni

Osobitosti

  • Jedno ime domene
  • Odvojeni imenik za dodatnu stranicu

Primjer: www.mycompany.com/s1/ , www.mycompany.com/s2/ ili www.mycompany.com , www.mycompany.com/s2/ .

Načelo

Stvara se mapa, na primjer s2, tamo se dodaje sadržaj, dodjeljuje se predložak web-mjesta i konfigurira se višestruko mjesto

postavke

U postavkama stranice (Postavke proizvoda -> stranice -> popis stranica) postavite sljedeće parametre za stranice s1 i s2:

  • Ime
  • mapa web mjesta (za s1 "/" ili "/s1/")
  • naziv web stranice
  • url poslužitelja (isti)

Multisite na različitim domenama

Načelo

  • Odvojeni naziv domene za dodatnu stranicu
  • Odvojeni web poslužitelj za dodatnu stranicu

Postavke poslužitelja

  • postavljanje web poslužitelja
  • delegiranje domene

Bitrix virtualni stroj

Dva su mjesta dodana u BitrixVM.

Delegiranje domene

U oglednom tečaju datoteka hosts je uređena.

Postavljanje stranica

Instalirajte Bitrix u mapu prve stranice. Zatim su napravljeni u mapi drugog mjesta simboličke veze u mapu bitrix I Učitaj prvo mjesto.

ln -s /home/bitrix/ext_www/site_one/bitrix /home/bitrix/ext_www/site_two
ln -s /home/bitrix/ext_www/site_one/upload /home/bitrix/ext_www/site_two

Kopiraj datoteke na drugo mjesto:

  • pristup.php
  • .htaccess
  • 404.php
  • indeks.php

Stranice imaju sljedeće postavke:

  • Ime
  • Naziv domene
  • mapa stranice
  • naziv web stranice
  • url poslužitelja
  • put do korijenske mape web poslužitelja

Premještanje odjeljka web stranice na poddomenu na primjeru foruma

  1. Napravite mapu foruma
  2. Smjestimo u njega složenu komponentu foruma
  3. u postavkama stranice dodajte naziv domene mysite.ru i forum.mysite.ru
  4. u mapi foruma stvaramo simboličke poveznice na mape bitrix i upload
  5. za povezivanje predloška koristimo php uvjet $SERVER["HTTP_HOST"] == "forum.mysite.ru"

S ovom opcijom, izbornik na udaljenoj poddomeni neće raditi, jer Ovo zahtijeva apsolutne staze u izborniku.

Pseudo-multisite

  1. Stvorena je poddomena.
  2. Ovaj naziv domene naveden je u postavkama stranice.
  3. Indeksna stranica sadrži sljedeći kod:
// povežite datoteku s klasom CMainPage
zahtijevaju ($_SERVER [ "DOCUMENT_ROOT" ] . "/bitrix/modules/main/include/mainpage.php") ;
// dohvaćanje identifikatora trenutne stranice prema nazivu domene
$site_id = CMainPage: : GetSiteByHost () ;
// dobivanje apsolutne staze do indeksne stranice mape web mjesta
$stranica = CMainPage: :GetIncludeSitePage ($site_id) ;
// ako je stranica definirana i onda je definirana indeksna stranica
if (strlen ($site_id ) > 0 && strlen ($page ) > 0 ) (
// spojite stranicu
zahtijevati_jednom($stranica);
) inače ( // inače ako mjesto nije definirano tada
zahtijevaju ($_SERVER [ "DOCUMENT_ROOT" ] . "/bitrix/header.php" ) ;
// zatim možete postaviti kod koji će biti prikazan if
// stranica nije prethodno definirana
zahtijevaju ($_SERVER [ "DOCUMENT_ROOT" ] . "/bitrix/footer.php" ) ;
}

Mnoga mjesta

Rješavanje poslovnog problema prema općem načelu "svaki web resurs ima svoj sustav upravljanja" je neučinkovito; a posebno neučinkovito kada je kontrolni sustav svaki put drugačiji. Problemi koji se javljaju ovim pristupom su:

  1. Pretjerani financijski troškovi potrebni za kupnju ili razvoj sustava za upravljanje web stranicama.
  2. Različite ulazne točke u upravljanje web-stranicom, različito sučelje za upravljanje.
  3. Razni sustavi autorizacije i baze podataka korisnika web stranice.
  4. Raznovrsni oglasni prostor.
Kao rezultat toga, tvrtka ima decentralizaciju u upravljanju svojim web projektima. Pretjerani resursi se troše na izradu web rješenja, a rješavanje poslovnih problema na internetu kasni. Posjetitelji web projekata tvrtke također mogu imati neugodnosti u radu s njima.

1C-Bitrix predlaže promjenu ove situacije. Na svakom primjerku proizvoda možete stvoriti mnoge web stranice u skladu s primjenjivom shemom licenciranja.

Zašto je nastao potreba za stvaranjem sustava s više mjesta i što to uopće znači? Kako bih odgovorio na ovo pitanje, navest ću vam rječiti primjer našeg razgovora s klijentom.

Kontaktirala nas je izdavačka tvrtka za savjet oko odabira optimalnog rješenja. Voditelj odjela za internet rekao je da imaju 18 različitih web stranica koje rade istovremeno. I svaka stranica ima nekakav sustav za upravljanje sadržajem, nekakav mehanizam za upravljanje oglašavanjem, negdje postoji online trgovina sa svojim korisnicima. Većina projekata ima zasebne forume sa svojim korisničkim računima, ponegdje su statistike, blogovi...

“A sada zamislite”, kaže, moju proračunsku tablicu u Excelu, gdje spremam sve svoje lozinke za pristup ovoj rezervi! Pa dobro, uspjeli smo natjerati naše zaposlenike da pamte lozinke i rade s njima, ali ja ne mogu natjerati svoje klijente da tako rade?! Mi smo, zapravo, već izgubili kontrolu nad razvojnim procesom, nadogradnjom projekata, ne možemo otvarati nove projekte...
Trebam sustav koji ne samo da će kombinirati funkcionalnost koju trebam za jednu stranicu, već će također omogućiti da se sve stranice kombiniraju u jedan sustav upravljanja, s jedinstvenim sustavom autorizacije i sigurnosti, kada će se klijent trebati samo registrirati na bilo kojem stranica i moći će raditi sa svim ostalim stranicama. Prepoznat ćemo ga i ponuditi mu dodatne usluge.”

Razumijevajući ovaj problem, implementirali smo MULTI-SITE u sva izdanja softverskog proizvoda 1C-Bitrix: Site Management, počevši od verzije 4.0. Štoviše, svako izdanje našeg proizvoda (osim za "First Site" i "Start" uključuje licencu za neograničen broj stranica. To jest, na temelju izdanja "Business" možete kreirati nekoliko projekata ujedinjenih sustavom upravljanja, a jedan projekt može biti veliki portal, i drugo - velika internetska trgovina itd..

Zanimljivo, kako online prisutnost vaše tvrtke raste, broj vaših projekata stalno će se povećavati. A ako na jednom ili dva projekta još ne osjećate akutno probleme nedosljednosti, svaki će novi projekt udvostručiti složenost i troškove te usporiti vaš napredak ako vaši projekti u početku nisu spojeni u sustav s više mjesta.

Artem Ryabinkov, vodeći analitičar, koordinator projekta u 1C-Bitrixu


Tehnologija

Mjesta i slučajevi

Pod, ispod primjerak proizvoda znači kopiju "1C-Bitrix: Site Management" koju je kupio klijent, koristeći jednu bazu podataka s popisa DBMS-ova koje podržava proizvod.

Pod, ispod web stranica se shvaća kao kombinacija sljedećih pojmova:

  • Račun u zajedničkoj bazi podataka;
  • Javni dio stranice (datoteke i mape);
  • Postavke stranice.
Drugim riječima, web stranica je entitet kreiran u sustavu koji ima određeni skup podataka (sadržaj) i parametara (jezik, predložak dizajna, formati datuma i vremena). Podaci mogu biti jedinstveni unutar ove stranice (javni dio, pojedinačni informativni blokovi, web obrasci, ankete, forumi itd.) ili dijeljeni između više stranica.

Multisite tehnologija

Na svaku stranicu mora upućivati ​​određeni naziv domene ili skup naziva domena. Takva podudaranja navedena su u postavkama svake stranice. Nema ograničenja za nazive domena i mogućnosti adresiranja. Svaka nova kreirana web stranica može biti domena druge ili treće razine.

Dakle, sva su mjesta implementirana na temelju jedan primjerak proizvoda i koristiti jedna zajednička baza podataka. Ovo ima sljedeće neosporne prednosti:

  1. Jedinstveno sučelje za upravljanje proizvodima omogućuje upravljanje svim web projektima na jedinstven način s jedne točke: mijenjanje strukture, dodavanje sadržaja, upravljanje pravima pristupa itd.
  2. Jedinstveni sustav autorizacije i jedinstvena baza korisnika omogućuje korisniku da se registrira na jedan web projekt, a zatim koristi web servise i informacije na svim drugim resursima, u skladu sa svojim pravima.
  3. Jedinstveni sustav prikupljanja statistike kako za svaki projekt zasebno tako i za dobivanje sumarnih analitičkih podataka za sve projekte. Osim toga, zahvaljujući tehnologiji UserMultiSiteTransfer, izvedena prepoznavanje posjetitelja koji dolaze na različite stranice unutar konfiguracije s više stranica.
  4. Jedinstveni oglasni prostor koji omogućuje tvrtki ili privučenom oglašivaču upravljanje postavljanjem i prikazivanjem bannera s jednog mjesta. A zahvaljujući tehnologiji UserMultiSiteTransfer - prepoznajte posjetitelja i učinkovito koristiti prikaz bannera .

Ako je tvrtka razvila i poboljšala poslovne procese za upravljanje web stranicama: stvaranje i objavljivanje materijala, upravljanje oglašavanjem, anketama itd., Stvaranje novog web resursa neće dovesti do promjena u ovoj strukturi.

Stranice imaju jednu bazu podataka, pa ako ste implementirali uvoz/izvoz sa svojim korporativnim ili računovodstvenim sustavom, tada će podrška za više stranica biti transparentna za ovu funkcionalnost.

Multisite se može implementirati na dva glavna načina.

U prvom i najjednostavnijem čak nije potrebna konfiguracija web poslužitelja! Svaka web stranica u korijenskoj mapi web poslužitelja bit će smještena u poseban direktorij, na primjer /site1/ i /site2/. Postavke svake stranice označavaju nazive domena po kojima se trebaju vizualizirati, te pripadajući direktorij s javnim dijelom stranice. Kao rezultat toga, Bitrix će automatski povezati odgovarajuće skripte u tim imenicima, što će vizualizirati sadržaj.

Komplet za distribuciju softverskog proizvoda isporučuje se konfiguriran za rad u skladu s prvom metodom.

Druga tehnika vam omogućuje da odvojite javne dijelove web stranica što je više moguće. Da biste to učinili, trebate konfigurirati nekoliko virtualnih hostova (web poslužitelja) na web poslužitelju (Apache, IIS). Svaka stranica u sustavu dobiva svoj korijenski direktorij (Document Root), u kojem se nalazi njen javni dio. Ponekad svaka stranica može čak imati svoju IP adresu. Štoviše, ako u prvoj metodi proizvod sam određuje koju će stranicu spojiti na zadane nazive domena, tada će tu operaciju izvršiti web poslužitelj. Ovom implementacijom jezgra sustava je fizički smještena na jednom mjestu, recimo na glavnoj stranici (mape /bitrix/ i /upload/), a na ostalim stranicama prave se simbolične poveznice na te mape.

Stoga proizvod podržava mnoge metode i parametre za organiziranje više stranica. Prva je opcija vrlo prikladna ako se projekt nalazi na dijeljenom hostingu, kada nema pristupa postavkama poslužitelja ili je konfiguracija iznimno ograničena. Druga opcija se obično koristi na namjenskim poslužiteljima, a pruža maksimalnu izvedbu i jednostavnost postavljanja i konfiguriranja projekta.

Svaka opcija implementacije je apsolutno transparentna kako za posjetitelje web stranica tako i za internetske tražilice. Ne izvode se preusmjeravanja, što ne ometa ispravno indeksiranje svakog izvora od strane pretraživačkog robota.

Licenciranje

Standardni paket proizvoda uključuje licenca za neograničeni broj stranica (osim za licence “First Site” i “Start”). Kupnjom kopije 1C-Bitrix: Site Management možete besplatno stvoriti, na primjer, resurs na ruskom i engleskom jeziku ili korporativnu web stranicu i internetsku trgovinu.

Sve web stranice koje rade pod istom licencom moraju biti smještene na istom hostingu i koristiti jednu kopiju softverskog proizvoda 1C-Bitrix: Site Management.

Teškoća lekcije:

Razina 4- teško, zahtijeva koncentraciju, pažnju na detalje i strogo pridržavanje uputa.

Da bi više stranica radilo na različitim domenama, trebat ćemo konfigurirati softverski proizvod. Web poslužitelj Apache, kao i u slučaju hostinga s više stranica na jednoj domeni, mora konfigurirati tvrtka koja pruža usluge hostinga.

Kao primjer koristit ćemo konfiguraciju dviju stranica:

  • www.site1.com - korporativna web stranica tvrtke
  • www.site2.com - internetska trgovina tvrtke

Postavljanje više stranica na različitim domenama

Svaka stranica mora biti smještena u odgovarajući direktorij, na primjer:

  • /početna/www/site1/
  • /početna/www/site2/

Instalacija proizvoda i postavljanje simboličkih poveznica

Proizvod je instaliran na jednoj od stranica. Kako bi motor radio za obje stranice, morate stvoriti simboličke veze za stranicu koja nema instaliran motor. Linkovi će biti potrebni za mape /bitrix, /local i /upload. Te su mape zajedničke za obje stranice, to je značajka arhitekture.

Bilješka: Moguće je jednostavno kopirati određene mape s prvog mjesta na drugo. Ovim kopiranjem dobit ćete dvije kopije kernela koje rade s istom bazom podataka. Ova će opcija funkcionirati, ali postoje dvije negativne točke: tehnička i pravna. Tehnički problem je u tome što će se nakon ažuriranja jedne od jezgri baza podataka ažurirati, a druga stranica će prestati raditi. Pravni problem je taj što je kopiranje kernela protivno licenci proizvoda.

Bilješka: Tehnički je moguće (ali se ne preporučuje) kopirati navedene mape u neku vanjsku mapu na koju su konfigurirane simboličke veze za sve stranice.

Simbolična veza:(također simbolička veza od engleskog Symbolic link, simbolička veza) je posebna datoteka za koju se u datotečnom sustavu ne pohranjuju nikakve informacije osim jedne tekstualne linije. Ovaj redak se tumači kao put do datoteke koja se mora otvoriti kada se pokušava pristupiti ovoj vezi.

U praksi se simboličke veze koriste za prikladnije organiziranje strukture datoteka na računalu, jer dopuštaju da jedna datoteka ili direktorij ima nekoliko imena i oslobođene su nekih ograničenja svojstvenih tvrdim vezama (potonje su važeće samo unutar jednog odjeljak i ne može se odnositi na imenike).

Veze se mogu kreirati na dva načina. Prvi je onaj klasični, koji je tvrtka preporučila od samog početka. Drugi - kasnije, smatra se "ljepšim i gracioznijim". Ne uključuje korak stvaranja zasebne mape i prijenos jezgre sustava u nju.

Prva opcija(zeleno su prikazani primjeri instalacije na UNIX sustavima):

  1. instalirajte softverski proizvod
  2. kreirajte direktorij /home/www/shared/ u kojem će se nalaziti datoteke zajedničke svim stranicama:
    mkdir /home/www/shared
  3. premjestite cijeli direktorij /home/www/site1/bitrix/ u /home/www/shared/bitrix/ :
    mv /home/www/site1/bitrix /home/www/shared/bitrix
  4. premjestiti cijeli direktorij /home/www/site1/upload/ u /home/www/shared/upload/ :
    mv /home/www/site1/upload /home/www/shared/upload
  5. premjesti cijeli direktorij /home/www/site1/local/ u /home/www/shared/local/ :
    mv /home/www/site1/local /home/www/shared/local
  6. kreirajte simboličku poveznicu za direktorij /bitrix/ na svakoj od stranica:
    1. ln -s /home/www/shared/bitrix /home/www/site1/
    2. ln -s /home/www/shared/upload /home/www/site1/
    3. ln -s /home/www/shared/local /home/www/site1/
    4. ln -s /home/www/shared/bitrix /home/www/site2/
    5. ln -s /home/www/shared/upload /home/www/site2/
    6. ln -s /home/www/shared/local /home/www/site2/
  7. provjerite je li web poslužitelj ( Apache, IIS) ima pravo pisanja u direktorij /home/www/shared/ (ovo će biti potrebno za rad sustava ažuriranja i preuzimanje grafičkih datoteka)
  8. postavite javni dio druge stranice u direktorij /home/www/site2/

Bilješka: Za stvaranje i uklanjanje simboličkih poveznica u Windowsima (od Viste) postoji naredba mklink ili koristite dodatne programe, npr. Daleki upravitelj ili Spojnica iz Sysinternalsa.

Važno! Datotečni sustav FAT32 ne podržava stvaranje simboličkih veza.

Prilikom postavljanja konfiguracije s više stranica na UNIX-u, možete koristiti programsku metodu stvaranja simboličkih veza:

Bilješka:

U nekim slučajevima, na primjer, ako web poslužitelj radi u chroot-u, potrebno je napraviti relativne veze.

Primjer:
/var/www/s1 - prvo mjesto
/var/www/s2 - drugo mjesto
/var/www/shared - mapa s jezgrom sustava

Ln -s ../shared/bitrix bitrix ln -s ../shared/upload upload ln -s ../shared/local local Idite na /var/www/s2 i izvršite iste naredbe.

Druga opcija. U njemu se simboličke veze stvaraju izravno u mapi drugog mjesta.

  1. Instalirajte softverski proizvod prvi u imenik prve stranice /home/www/site1/
  2. Napravite skriptu u korijenskoj mapi drugog mjesta (/home/www/site2/), na primjer, pod imenom simbolička veza.php:
  3. Izrada poveznica na bitrix, lokalne i upload mape Simboličke veze uspješno kreirane"; else $strError = "Nije moguće stvoriti vezu na mapu za učitavanje, obratite se administratoru poslužitelja"; ) else $strError = "Nije moguće stvoriti vezu na mapu bitrix, kontaktirajte administratora poslužitelja"; ) else $strError = "Navedena staza ne sadrži bitrix mapu"; ) else $strError = "Netočna staza ili pogreška prava pristupa"; if ($strError) echo "".$strError."
    Izvorni put: ".$full_path; ) ?>
    Put do mape koja sadrži bitrix, lokalnu i upload mapu:
  4. Pokrenite skriptu i navedite stazu do korijenske mape prve stranice, u našem slučaju /home/www/site1/ .
  5. Nakon kreiranja simboličkih poveznica u adresnu traku preglednika upišite site1/bitrix/admin. Otvorit će se ploča za autorizaciju.
  6. Unesite administratorske podatke koje ste naveli prilikom instaliranja proizvoda na prvom mjestu i bit ćete preusmjereni na administrativnu ploču "1C-Bitrix: Upravljanje web mjestom".

Nakon što je skripta dovršena, prisutnost simboličkih poveznica na mape /bitrix, /local i /upload u mapi druge stranice može se provjeriti pojavom istoimenih mapa.

Problemi se mogu pojaviti u fazi stvaranja:

  • nedostatak prava za pisanje u trenutnu mapu;
  • sigurnosno ograničenje ( open_basedir), koji korisnicima dijeljenog hostinga onemogućuje pristup drugim stranicama.

Ako imate problema s ovom skriptom, trebali biste kontaktirati svog hosta za pomoć.

Konfiguracija stranice

Stranice se konfiguriraju u administrativnom dijelu sustava na stranici Postavke > Postavke proizvoda > Web-mjesta > Popis web-mjesta.

U retku prve stranice (www.site1.com), u stupcu akcije odaberite naredbu Promijeniti i u njima navesti:

  • Ime: mjesto1
  • Naziv domene: site1.com
  • Mapa stranice: /
  • Naziv stranice: Korporativna web stranica tvrtke " Naziv tvrtke"
  • URL poslužitelja: www.site1.com
  • /početna/www/site1/

Ako je DNS konfiguriran tako da vaša stranica odgovara na adresu http://site1.com, tada u polju Naziv domene Preporučljivo je navesti bez www. Možete navesti u ovom polju, počevši od novog retka, bilo koji broj naziva domena na koje želite da stranica odgovara (ili na koje već odgovara).

Važno je imati na umu da su vrijednosti unesene u polje Naziv domene, koristi proizvod za distribuciju informacija o posjetiteljima na određenim domenama pomoću tehnologije transfer posjetitelja. Stoga je vrlo preporučljivo navesti potpuni popis domena za koje stranica može odgovoriti.

Vrlo je važno ne uključiti stranice na popis domena koje ne rade na ovoj instanci proizvoda. Netočno navedena ili nepostojeća domena ne samo da može usporiti rad korisnika, već zapravo i onemogućiti prijenos podataka na stranice koje ne rade na istoj domeni. instanca proizvoda.

Na sličan način konfigurirajmo parametre druge stranice (www.site2.com/):

  • Ime: mjesto2
  • Naziv domene: site2.com
  • Mapa stranice: /
  • Naziv stranice: Internetska trgovina tvrtke " Naziv tvrtke"
  • URL poslužitelja: www.site2.com
  • Put do korijenske mape web poslužitelja za ovu stranicu:/početna/www/site2/

Imajte na umu da za dvije stranice u parametru Mapa stranice navedena je ista vrijednost: " / ". To je zbog činjenice da web stranice poslužuju različiti "virtualni poslužitelji" (u Apache terminologiji) koji koriste različite direktorije za smještaj datoteka.

Također morate obratiti pozornost na parametar Put do korijenske mape web poslužitelja za ovu stranicu. Za različite stranice ima vlastitu vrijednost, preuzetu iz parametra DocumentRoot postavki odgovarajućeg "virtualnog poslužitelja" (pogledajte dolje za primjer dijela datoteke httpd.conf Apache postavke).

Bilješka:

Morate imati na umu da kada organizirate više stranica pomoću ove metode, možete koristiti oba virtualna poslužitelja u jednoj instalaciji Apache, i samo različite instalacije Apachea. Ovo vrijedi za druge web poslužitelje: IIS, EServ itd.

Važno: Kada kreirate drugu stranicu, trebate kopirati datoteke /.htaccess i /404.php s glavne stranice ili ih ponovno stvoriti.

Kada je proaktivna obrana omogućena, drugo mjesto mora biti dodano na popis.

Datoteka.pristup.php

Stvorite datoteku .pristup.php s ovim sadržajem u korijenu druge stranice:

Bilješka:

Za ovu metodu organiziranja više stranica, nije potrebno konfigurirati algoritam odabira stranice na indeksnoj stranici, kao što je to učinjeno s, jer mjesto će biti jedinstveno identificirano poljem Naziv domene.

Konfiguracija je spremna za korištenje.

Prijaviti se

  • Upišite http://site1/bitrix/admin (ili http://site2/bitrix/admin) u adresnu traku vašeg preglednika. Otvorit će se ploča za autorizaciju.
  • Unesite administratorske podatke koje ste naveli prilikom instaliranja proizvoda na prvom mjestu i bit ćete preusmjereni na administrativnu ploču "1C-Bitrix: Upravljanje web mjestom".

Budući da postoji jedna jezgra i jedna baza podataka, administrativna ploča za obje stranice bit će ista.

Tehnički, sustav omogućuje stvaranje proizvoljnog broja stranica koje rade prema ovoj shemi. U svakoj od novostvorenih stranica potrebno je konfigurirati web poslužitelj i stvoriti simboličku vezu. Pravno, za izradu svake nove stranice (osim prva dva) morate kupiti dodatni kupon.

Bilješka: HTML predmemoriranje nije podržan na drugom multisite-u. Štoviše, ova se funkcionalnost smatra zastarjelom. Preporučljivo je koristiti tehnologiju.

Razvrstavanje web stranica na općem popisu

Postoji značajka postavljanja vrijednosti u polju Sortiranje

Najbolji članci na temu