Încerc să blochez execuția scriptului PHP în câteva foldere pentru o instalare WordPress, dar Nginx îmi dă greutăți.
locație = /wp/wp-includes/category.php {
    nega totul;
}
Pot bloca scripturile individuale folosind potrivirea exactă, dar când folosesc regex, nu funcționează.
locație ~* /wp/wp-includes/.*\.php$ {
    nega totul;
}
Nu sunt sigur ce fac greșit?
EDITAȚI | ×
Am următoarele reguli după regulile de mai sus:
Locație / {
    error_page 418 = @cachemiss;
    # Pentru a permite POST pe pagini statice. O să caute cu mine eroare
    pagina_eroare 405 =200 $uri;
    recursive_error_pages on;
    # ocoliți memoria cache pentru șirurile de interogare comune
  if ($arg_s != "") { return 418; } # interogare de căutare
  if ($arg_p != "") { return 418; } # solicitați o postare/pagină după ID
  if ($arg_amp != "") { return 418; } # test de amperi
  if ($arg_preview = "adevărat") { return 418; } # previzualizare postare / pagină
  dacă ($http_cookie ~* "(wordpress_logged_in_|wp\-postpass_|woocommerce_items_in_cart|woocommerce_cart_hash|wptouch_switch_toogle|comment_author_|comment_author_email_)") {
    întoarcere 418;
  }
  # prin trecerea în cache pentru solicitările de postare
  if ($request_method = POST ) {
    întoarcere 418;
  }
  dacă (!-f "$fișier_rachetă") {
    întoarcere 418;
  }
  etag on;
  try_files "$rocket_url" $uri $uri/ /index.php$is_args$args;
}
locație @cachemiss {
  try_files $uri $uri/ /index.php$is_args$args;
}