"I'm absolutely sure that I am making stupid mistakes, but...." Yes you are. server { listen 80; server_name www.example.com; rewrite ^/(.*) http://example.com/$1 permanent; } $1 doesn't exist Make your regex simply ^ and not ^/(.*) make sure you have a server block setup for what you're redirecting to - or else you get a loopby MTecknology - How to...
Get more servers. You can't prevent this type of attack. All you can do is try your best to mitigate it. Essentially... if you have a 1mbit/sec pipe and your DDoS attacker is pushing 2mbit/sec at that - then you're hosed. If you have a 10mbit/sec pipe and they can only push 7mbit/sec at you - then you'll be fine. You can try to contact your/their ISP, block their connections as they comeby MTecknology - How to...
Just add a location block prior to where you're hitting your first php block. The order of location blocks matters. I believe regex takes precedence and the more refined one also takes more precedence. This means that a location block prior to handle this will keep that from happening. Example: location /private_php/ { return 403; } location / { try_files $uri $uri/ /index.php; }by MTecknology - How to...
... Holy crap that looks disguising. You should look at what you're really trying to do because whatever you're trying is very ugly.by MTecknology - Ideas and Feature Requests
try_files /system/maintenance.html $uri $uri/ /index.php @backend; If /system/maintenance.html exists then your location block will never server anything other than that. It's the first file that Nginx 'tries' to open. Try files is in no way a rewrite. http://wiki.nginx.org/NginxCoreModule#try_filesby MTecknology - Ideas and Feature Requests
Nginx does support IPv6. I don't know the release that it began in - but it is supported.by MTecknology - Ideas and Feature Requests
I think that makes about as much sense as this: http { http { server {} } server {} } ... Which obviously won't work.by MTecknology - Ideas and Feature Requests