Administrare server open source

Platforma de hosting cu software liber, gratuit, open source.

Probabil va intrebati cum pot face unii de isi genereaza zeci sau sute de subdomenii in mod automat. Sigur nu sunt facute manual. E o chestie care se foloseste de obicei in “BlackHat SEO“. La ce e buna ? Sa va dau un exemplu. aveti un domeniu exemplu.com care are un anumit continut. O metoda ca sa apara pe google cat mai multe rezultate de pe siteul vostru e sa faceti mai multe subdomenii cu acelasi continut si sa vada google ca aveti mai multe site-uri diferite. OK, daca faceti mai multe subdomenii cu acelasi continut inseamna “duplicate content” si asta nu da bine. Google (sau orice crawler care se respecta) va deindexa in timp o parte din subdomenii deci nu ati rezolvat nimic.

Spamerii s-au gandit in halul urmator: “Ce ar fi sa avem continut care se schimba in functie de subdomeniu ?“. Si asa a aparut ideea de “Wildcard, subdomenii, DNS si apache“. Ce inseamna combinatia asta ? Adica, se genereaza o gramada de subdomenii cu continut asemanator la prima vedere. Diferenta e ca sunt parti care se schimba in functie de numele subdomeniului. De exemplu, probabil ati vazut pe google ca sunteti trimisi catre site-uri de genul “gps.motordecautarefacutdespameri.com” si cand ajungeti acolo vedeti ca de fapt nu e nici un fel de informatie despre gps ci doar rezultatul cautarii “gps” pe motorul de cautare folosit in siteul respectiv. Va dati seama ca nu sta nimeni sa faca subdomenii de genul asta. Spamerii sunt lenesi. Se prefera metoda wildcard-urilor. Asta e intrebarea care mi-am pus-o azi si in urma unei cautari asidue pe web (care a tot durat vreo 10 minute cu tot cu teste) m-am prins cum se face.

Treaba e simpla, cu conditia sa aveti acces ca superuser (root) pe un server web. In primul rand trebuie sa editati zona DNS corespunzatoare domeniului si sa setati o zona A care sa pointeze catre IP-ul care il doriti. A doua parte e sa modificati httpd.conf sa ofere acelasi continut pentru orice subdomeniu cerut de pe domeniul care il aveti. A treia parte e sa faceti continutul sa fie generat in functie de subdomeniul cerut.

Practic, daca aveti domeniul “domeniulmeu.ro” trebuie sa editati fisierul /var/named/domeniulmeu.ro.db si sa adaugati la sfarsit o linie:

*.domeniulmeu.ro. 14400 IN A 12.34.56.78

Asta ii spune serverului DNS (BIND) ca la orice cerere de rezolvare a unui subdomeniu a domeniului domeniulmeu.ro sa se returneze IP-ul 12.34.56.78.

Problema DNS-ului fiind rezolvata trebuie editat si fisierul /usr/local/apache/conf/httpd.conf si sa se adauge in instructiunea VirtualHost corespunzatoare domeniului un bloc de instructiuni de forma:

<virtualhost 12.34.56.78:80>
    DocumentRoot /home/user/public_html/
    BytesLog /usr/local/apache/domlogs/domeniulmeu.ro-bytes_log
    User user
    Group grup
    ServerName domeniulmeu.ro
    ServerAlias *.domeniulmeu.ro
 
    Userdir disabled
 
    CustomLog /usr/local/apache/domlogs/domeniulmeu.ro combined
</virtualhost>

Asta ii spune serverului web apache ca orice cerere pe .domeniulmeu.ro sa fie servita din directorul /home/user/public_html. Adica, toate subdomeniile vor avea acelasi continut. Bineinteles, trebuie sa inlocuiti user cu userul care il aveti pe server, group cu grupul caruia ii apartine userul si domeniulmeu.ro cu domeniul care il aveti etc.

Mai departe mai trebuie doar sa verificati din PHP variabila $_SERVER[‘HTTP_HOST’] si sa afisati continutul corespunzator subdomeniului.

Deci, foarte elegant, s-a impacat si capra si varza. Subdomeniile chiar daca nu exista vor fi vizibile, continutul va fi unic pentru ca se genereaza in functie de variabila HTTP_HOST si omul poate sta linistit cu burta la soare.

Bineinteles, daca articolul e citit si de vreunul mai incet la minte, trebuie sa mentionez ca ce am spus mai sus NU trebuie folosit in scopuri ilegale/imorale. In schimb poate fi folosit cu succes in crearea/marirea unei afaceri online – cum ar fi servicii gratuite pt forumuri, bloguri etc.

DNS

11 Responses so far.

  1. George says:

    Bizoo nu face acelasi lucru?
    Adica genereaza subdomenii automat pentru firmele care cumpara publicitate de la ei?

  2. Sergiu says:

    Nu as putea sa iti spun sigur, dar dupa cum se comporta aplicatia lor probabil folosesc aceeasi tehnica 🙂

  3. Evolution says:

    Pai daca Google pune el acolo in php-ul lui un „if site.com have>500 subdomains and each subdomain have fewer than 50 pages==>spam = penalty”

    E riscanta tehnica,dar vad ca e folosita si de nume grele,e adevarat,cu continut ok pe pagini.

  4. Sergiu Tot says:

    Asta tine si de bunul simt al webmasterilor 😀

    Exista situatii in care wildcard e o tehnica buna. De exemplu, daca vrei sa faci un site cu informatii sau servicii pentru fiecare judet din tara. Faci un singur script care in functie de locatie stie despre ce judet e vorba pentru a oferi informatia. Practic ai nevoie de un singur script, pus intr-un singur director, si toata treaba se face transparent.

    In cazuri de genul asta nu cred ca Google face figuri. Oricate subdomenii ai avea, daca exista continut unic pe ele nu e o problema. In plus de asta, Google trateaza fiecare subdomeniu ca site diferit de siteul principal (http://exemplu.ro sau http://www.exemplu.ro) deci nu ar avea cum sa marcheze vreun site ca spam decat daca sunt foarte multe care au acelasi continut caz in care unele vor fi deindexate.

  5. MyhayTzA says:

    Salut . Am urmat pas cu pas tot ceeea ce tu mi-ai zis . problema este ca orice subdomeniu pun in bara de adresa ma trimite catre cgi-sys/defaultwebpage.cgi .
    Ce pot face ?

  6. Sergiu Tot says:

    Salut,

    Ai modificat si httpd.conf? Acolo trebuie sa fie problema.

  7. MyhayTzA says:

    Da , desigur ca am modificat httpd.conf .
    O sa revin diseara cu ceea ce am modificat in httpd.conf .
    Si poate asa ma puteti ajuta .

  8. MyhayTzA says:

    Uitati si o imagine . unde gresesc ?
    http://img842.imageshack.us/i/puttyu.png/

  9. Sergiu Tot says:

    Din ce ai pus acolo pare sa fie ok tot, dar domeniul nu-mi raspunde la ping ca sa pot verifica.

    In mod normal cPanel te redirecteaza spre pagina cgi-sys/defaultwebpage.cgi cand nu gaseste o inregistrare pentru subdomeniul cerut. Daca ai adaugat asa cum apare in imagine, ar mai fi doua posibilitati: fie nu ai restartat serverul web, fie ai pus in BIND alt IP decat cel care apare in VirtualHost.

    Daca ai facut corect tot si nu merge, iti recomand sa revii la setarile initiale si apoi sa creezi Wildcard DNS din cPanel. Pentru asta intri in cPanel -> Subdomains si creezi un subdomeniu cu numele * (asterisc). Asa rezolvi mai rapid problema. Eventual intra apoi in „Advanced DNS Editor” si verifica daca exista o inregistrare *.exemplu.ro cu IP-ul principal asociat.

  10. MyhayTzA says:

    Daca vrei putem vorbi pe messenger . Inca nu am reusit . miki21_dmv

  11. Sergiu Tot says:

    Incerc sa ajut cat pot, dar o fac doar aici sau pe NetHelp unde iti recomand sa deschizi o discutie pentru ca in mod clar situatia ta depaseste comentariile sau nelamuririle la adresa articolului 🙂