Webserver
Nützliche NGINX-Snippets
Unliebsame Crawler ärgern
if (!empty($_SERVER['HTTP_USER_AGENT'])) {
if (preg_match("/Wget/", $_SERVER['HTTP_USER_AGENT'])) {
header("Location: ftp://speedtest.tele2.net/1000GB.zip", true, 302);
exit;
}
}
Einzelne IP Adressen oder gesamte Netzbereiche aussperren (und Ärgern ( ͡° ͜ʖ ͡°))
# Dieses ganz oben in die jeweilige Konfigurationsdatei unter /etc/nginx/sites-available einfügen - IP Adresse(n) in CIDR Notation angeben
geo $bad_user {
default 0;
xx.xx.xx.xx/32 1;
xx.xx.xx.0/24 1;
}
# Dann im server - Block dieses einfügen, das Rewrite-Ziel kann nach Belieben verändert werden
if ($bad_user) {
rewrite ^ https://www.youtube.com/watch?v=oHg5SJYRHA0;
}
Laravel - Webseiten in einem Unterverzeichnis bereitstellen
Dazu bedienen wir uns des folgenden Config-Blocks
location ^~ /laravel {
alias /var/www/laravel/public;
try_files $uri $uri/ @laravel;
location ~ \.php {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_split_path_info ^(.+\.php)(.*)$;
include /etc/nginx/fastcgi_params;
}
}
location @laravel {
rewrite /laravel/(.*)$ /laravel/index.php?/$1 last;
}
Die Pfade zum PHP Socket müssen an die jeweiligen Gegebenheiten angepasst werden, aktuell wäre dies auf einem Ubuntu / Debian System bspw. /var/run/php/php7.4-fpm.sock