Queria responder no Stackoverflow, mas sua pergunta foi encerrada para rápida, feliz por você ter mudado aqui.
Primary script unknown
é reportado pelo php-fpm e quase sempre um problema com o caminho que você passa (do nginx) para o php-fpm. O processo simplesmente não consegue encontrar nenhum arquivo PHP nesse local. No seu caso, não é possível encontrar o arquivo porque o processo do php-fpm não tem permissões para ler o arquivo. Isso mesmo, você não precisa de nenhuma permissão de execução para um script PHP (a menos que seja um ponto de entrada da CLI). A razão para isso é simples, os scripts PHP não são executados, eles são analisados (leia).
Geralmente, é uma boa idéia usar o mesmo usuário / grupo para nginx, PHP e php-fpm, se for o seu servidor e ninguém estiver mexendo. Em seguida, aplique as seguintes permissões (assumindo /var/www
como raiz para todos os sites, o que é melhor prática):
# Fix user and group for all directories and files.
$ chown -R www-data:www-data /var/www
# Fix directory permissions (incl. sticky bit for group).
$ find /var/www -type d -exec chmod 2770 {} \;
# Fix file permissions (incl. sticky bit for group).
$ find /var/www -type f -exec chmod 2660 {} \;
Agora tudo deve ficar bem para qualquer coisa que você execute com nginx, PHP e php-fpm e que esteja abaixo de /var/www
.