Komerca DNS kaj Dinamikaj Subdomajnoj

Dum mia libertempo (ha!), Mi laboris por envolvi la Senlima Mapo de Sovaĝaj Birdoj aplikaĵo kun entreprena aplikaĵo, kiu permesos al homoj projekti sian propran butikan lokalizilon. Disvolvi mian propran Programaron kiel Serva solvo estas mia celo dum sufiĉe multaj jaroj, kaj ĉi tio estas bonega okazo.

Estas du ĉefaj ecoj de la breto, kiujn mi volis enmeti en la programon, kiuj rezultas esti granda defio, do mi volis diskuti ilin en la okazo, se vi iam celas fari la samon. Ambaŭ trajtoj estas oftaj tra la programoj, sed mi eksciis, ke kvankam ili estas oftaj, multaj gastigaj provizantoj ne subtenas ilin!

Mia celo estas konstrui memservan programon, kie la kliento povas agordi sian propran subdomajnon (http://subdomajno.myapplicationdomain.com), aŭ eĉ apliki sian propran subdomajnon (http://subdomajno.viadomajno.com). Por ke ĝi estu memserva, ĝi postulas la kapablon programi la solvon - sed ĝi aliras iujn agordajn dosierojn de domajna servilo, kiuj estas ekster-limoj kun la plimulto de gastigaj kontoj! La afero estas subteno por Komerca DNS, tio estas, povi indiki iun ajn subdomajnon al la domajno de la servilo. Alivorte, test.domain.com aŭ www.domain.com aŭ any.domain.com ĉiuj montras al la sama loko. Ne gravas, kion vi skribas - ĝi funkcios.

Ekster aplikaĵoj, ĉi tio fakte estas sufiĉe bela eblo ebligita - eĉ en via blogo. Ĝi permesus al iu ajn verki io.viadomajno.com kaj venigu ilin al viadominio.com. Vi surprizus vin, kiom da malbonaj ligoj ekzistas al via blogo aŭ retejo. Tio povus maltrafi trafikon se la persono ne rekonas, ke temas pri eraro kun la ligo.

La procezo funkcias reskribante la subdomajnon al pridemanda ĉeno antaŭ ol la paĝo efektive estas redonita de la retservilo ... do subdomain.domain.com efektive estas interpretita de Apache-serviloj kiel domain.com?what=subdomain per uzo de htaccess-dosiero:

# Ĉerpu la subdomajnan parton de domain.com
RewriteCond% {HTTP_HOST} ^ ([^ \.] +) \. Viadomajno \ .com $ [NC]
 
# Kontrolu, ke la subregiona parto ne estas www kaj ftp kaj mail
RewriteCond% 1! ^ (Www | ftp | poŝto) $ [NC]
 
# Redirekti ĉiujn petojn al php-skripto pasante kiel argumento al la subdomajno
RewriteRule ^. * $ Http://www.yourdomain.com/%1 [R, L]

Estas iuj aldonaj informoj pri la dosieroj ĉe kiuj vi devas redakti V-nessa.net. Notu, ke la dosieroj eble ne troviĝas kie specifite, depende de via gastiganta provizanto. Mia gastiganta provizanto efektive tre subtenas homojn enmiksiĝantajn, sed ili avertas, ke tiel fari povas nuligi klientan subtenon. Krom 'haki je via propra risko', ili ankaŭ ne celos helpi vin.

Mi laboros pri disvolvi la reston de la aplikaĵo anstataŭ resti ligita al la subdomina disvolviĝo. Mi efektive donos CakePHP pafo por uzi ĝin kiel kadron por ĝi!

Lasta noto, mi iomete ruzas pri ĉi tiuj aferoj. Mi estas benita kun evoluigaj teamoj dum mia laboro por eltrovi ĉi tion. Mi mem estas iomete danĝera. Ajna reago kaj helpo dankas!

3 Komentoj

  1. 1

    Tre mojosa. Mi efektive uzis la nomservilon de mia registristo kun komerca DNS kiam mi estis kun SliceHost, kaj Apache agordis por servi nekonfiguritajn subdomajnojn de la regulaj dosieroj.

    Mi vere scivolis rigardi la kadron de CakePHP, sed via ligilo mortis

    CakePHP troveblas ĉe http://cakephp.ORG

    • 2

      Mi pensis ankaŭ iri la registran vojon, Alex. Tio estas bonega ideo - probable la plej bona maniero trakti ĉi tion.

      Pardonu pri la morta ligo - ĝi estas riparita nun.

  2. 3

Kion vi pensas?

Ĉi tiu retejo uzas Akismeton por redukti spamon. Lernu, kiel via komento datiĝas.