Tente limpar sua dúvida, especialmente no final, em que você está gritando, em vez de fornecer código.
Com base na configuração que você forneceu no topo da sua pergunta, acabei com isso:
location /forum/ {
index dbseo.php; # You obviously wish to send everything erroneous/inexistent to dbseo.php, any index.php file would suffer the regex location below
try_files $uri $uri/ /forum/dbseo.php?$args; # Any inexistent file/directory will be handled over to /forum/dbseo.php
location ^~ /forum/dbseo.php { # Avoids matching the regex location below (performance)
}
location ^~ /forum/mobiquo { # Avoids matching any other rules
}
location ~* \.php$ {
try_files /forum/dbseo.php =404;
# Be careful here, try to secure your location since the regex can still be manipulated for arbitrary code execution
}
}
Locais aninhados são bons para o isolamento de blocos de localização potencialmente conflitantes. Tenha em mente que as localizações regex são avaliadas sequencialmente, assim, para evitar que a ordem dos blocos de localização tenha um impacto (que é uma bagunça exatamente como a configuração do Apache), tente sempre incluir locais de expressão regular em outros prefixo para evitar que vários deles sigam um ao outro. / p>
Você pode aprender sobre os modificadores location
em sua página de documentação.
Talvez haja mais subtelty, mas você tem todas as informações básicas que você precisa no meu exemplo. O trabalho é seu para entender / melhorá-lo para melhor atender às suas necessidades. : o)