Nginx automatic virtual subdomains
Published on 28.01.2014
От известно време ползвам Digitalocean и за момента съм много доволен от това. Но с хубавите страни на cloud машините идва и една малка подробност, a именно трябва да си настроя всичко сам. Тъй като явно съм мързелив и не ми се редактира конфигурацията на уеб сървъра толкова често използвам този конфигурационен файл за да си "създавам" автоматично виртуални събдомейни
server { listen 80; server_name "~^(?<sub>.+)\.rawpics\.net$"; if (!-d /projects/rawpics.net/$sub) { rewrite . http://rawpics.net/ redirect; } root /projects/rawpics.net/$sub; index index.php index.html index.htm; location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ { expires 1y; log_not_found off; } location / { try_files $uri /index.php?$args; if (-f $request_filename) { break; } if (-d $request_filename) { break; } rewrite ^(.+)$ /index.php?uri=$1 last; } location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location ~ /\.ht { deny all; } }
Ако не намери директория просто редирекваме към главния домейн :)
ps: оказа се че повече ми харесва nginx отколкото apache :)