location ~ /vkbot/ {
    root /home/www/vkbot/;
    try_files $uri $uri/ /index.php?$args;
    index index.php index.html;
    ...
}
Тут написано следующее: если в запросе 
есть (а не начинается, как вы хотите) строка 
/vkbot/, то выставим 
root /home/www/vkbot/;. 
В документации сказано, что uri из запроса 
добавляется к указанному пути. Итого, в вашем запросе за 
curl http://swight.live/vkbot/ nginx будет искать файлы в папке 
/home/www/vkbot/vkbot/. Не то что вы хотели, верно?
Из-за этого 
try_files  ничего не найдёт и сделает 
внутренний редирект на (барабанная дробь) 
/index.php. После чего nginx опять начнёт искать подходящий 
location и не найдёт ничего лучше чем 
location / в котором написан редирект.
Я полагаю, что исправлять надо как-то так:
location /vkbot/ {
    root /home/www/;
    try_files $uri $uri/ /vkbot/index.php?$args;
    index index.php index.html;
    ...
}