Nginx php wildcard domenai

Iš Žinynas.
Jump to navigation Jump to search

Turim situaciją kai reikia vieną web aplikaciją paleisti skirtingom aplinkom ant vieno domeno. Tam galima puikiai pritaikyti domain wildcardus t.y *.domenas.lt pvz.: petras.domenas.lt ir jomantas.domenas.lt redirektinami į tą pačią svetainę kuri atskirs iš kurio subdomeno bus jungiamasi.

DNS Įrašas[keisti]

Dns įrašas taip pat turi būti wildcardinis (žvaigždutė), atminkite, kad ne visi valdymo paneliai tai palaiko ypač visokiuose hotsex'o hostinguose. Screenshot at Aug 26 15-48-16.png

Nginx virtualus hostas[keisti]

server {
       listen 80;
       root /home/domenas.lt/public_html;
       index index.html index.htm index.php;
       server_name *.domenas.lt;
       location / {
               try_files $uri $uri/ /index.php?$query_string;
       }
       location ~ \.php$ {
           include snippets/fastcgi-php.conf;
           fastcgi_param IS_WILDCARD 1;
           fastcgi_pass unix:/var/run/php5-fpm.sock;
       }
       location ~ /\.ht {
           deny all;
       }
}

Php scriptas atskyrimui[keisti]

Kuris subdomenas kur naudojamas galima nesunkiai atskirti šiomis keliomis eilutėmis:

<?php
$sub = str_replace(".domenas.lt", "", $_SERVER["HTTP_HOST"]);
echo "Hostas: $sub";
?>