[warn] MaxCircuitDirtiness option is too short; raising to 10 seconds. [warn] CircuitStreamTimeout option is too short; raising to 10 seconds.The logs you posted show you are essentially unintentionally DDOSing yourself by over tuning your torrc. Your "massive" attack is being worsened by two specific settings.By forcing circuits to rotate every 10 seconds, you are forcing your CPU to perform constant, expensive cryptographic handshakes. Under an attack, Tor needs to focus on handling incoming cells, however your config is forcing it to constantly tear down and rebuild paths. Vanguard offers solid anonymity, but it can severely impact availability during a DoS attack, as it limits your options for routing. When your aggressive timeouts terminate a circuit, Vanguard restricts the "safe" nodes available for creating a new one. If those limited nodes are overloaded, your service remains offline.
Remove MaxCircuitDirtiness and CircuitStreamTimeout. Let Tor use its default window. Enable POW by adding HiddenServicePoWDefensesEnabled 1. Set HiddenServiceDoSNumIntroductionPoints 12 (or up to 20). This spreads the attack across more nodes so one choke point doesn't take you down. PHP/Nginx rate limits won't help here because the attack is hitting the Tor protocol layer, not the web layer.
Endgame may be of some help to you, but if you're having trouble installing and setting it up, I'm not convinced you should be operating any kind of hidden service.
Tor 0.4.9.6 (git-894a92ac2279747e) running on Windows 8 [or later]I would highly recommended that you operate your server(s) on Debian or an alternative Linux distribution. Windows is fundamentally contrary to operational security and quite laughable.