Я думаю, что проблема состоит в том, что Вы используете "try_files" наряду с "если" оператор в Вашем местоположении. Из документации try_files, как предполагается, является заменой для того, если и mod_rewrite разрабатывают проверку существования. От nginx Wiki, "try_files" страница (http://wiki.nginx.org/HttpCoreModule#try_files):
"try_files является в основном заменой для типичной проверки существования файла/каталога стиля mod_rewrite. Это, как предполагается, более эффективно, чем использование, если - посмотрите IfIsEvil"
Проверьте "если" страница Wiki (http://wiki.nginx.org/NginxHttpRewriteModule#if):
"примечание: Перед использованием того, если видят, если злая страница, и рассмотрите использование try_files вместо этого".
Так, попытка удаляют это если проверка и просто остающийся с "try_files". Это должно проверить на существование любой страницы (включая asd.php или что-либо еще endind в .php) и отступить к index.php, если это не находит его.