Te ei ole ehk kunagi mõelnud, mis on Auth Basic, kuid olete sellega kindlasti kokku puutunud, kui olete oma marsruuteri seadistustesse sisenenud. See on mehhanism, mida nad nimetavad autoriseerimiseks kasutajanime ja parooliga veebiserveri tasandil. Sellist autoriseerimist toetavad nii Apache kui ka Nginx. Selles juhendis soovitame käsitleda sellist küsimust, kuidas seadistada Auth Basic konkreetsele marsruudile või konkreetsele saidile.
Nii näeb välja Auth Basic autoriseerimise aken:
Nüüd peaksite aru saama, millest see juhend räägib. Autoriseerimist on võimalik konfigureerida konkreetse URL-i, kogu saidi või kõigi saitide jaoks. Kuid kõigepealt tuleb luua fail kasutajate ja paroolide nimekirjaga. Selleks kasutame abiprogrammi htpasswd. Käsu süntaks on järgmine:
$ sudo htpasswd -c /path/to/file username
Antud juhul kasutatakse -c valikut uue faili loomiseks, varem loodud failide redigeerimiseks seda kasutada ei pea. Näiteks:
$ sudo htpasswd -c /etc/nginx/auth.basic admin
Programm teeb kahekordse salasõna päringu. Turvalisuse huvides ei kuvata parooli, vaid see sisestatakse. Kui olete sellise faili loonud, saate minna otse Nginxi konfiguratsiooni.
Kõikide ressursside parooliga kaitsmiseks tuleb lisada direktiiv faili /etc/nginx/nginx.conf
jaotisesse http
:
auth_basic "Restricted area";
auth_basic_user_file /etc/nginx/auth.basic;
Konkreetse lehekülje aadressi (URL) kaitsmiseks peate lisama direktiivi vastavasse asukohaplokki. See võiks olla /wp-admin/admin-ajax.php
:
location /wp-admin/admin-ajax.php {
auth_basic "Restricted area";
auth_basic_user_file /etc/nginx/auth.basic;
}
Kui sait on WordPressis, on kõige parem paigutada asukoht
location/
. Kõik ülalkirjeldatud reeglid toimivad, lisaks on tagatud kaitse. Kui teil on vaja lubada juurdepääsu konkreetsele asukohale
, näeb direktiiv välja auth_basic "off"
:
location /wp-admin/admin-ajax.php {
auth_basic "off";
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass 127.0.0.1:9002;
fastcgi_index index.php;
include /etc/nginx/fastcgi_params;
}
PHP töötlus tuleb lisada asukoha
plokki, vastasel juhul palutakse kasutajal alla laadida skript, millele ta juurde pääseb.
Seega ei ole juurdepääsu seadistamine Nginxis liiga keeruline. Tuleb lihtsalt asukohaplokk õigesti konfigureerida.