felek1 0 Zgłoś post Napisano Wrzesień 18, 2014 Ma ktoś pomysł jak to napisać? AUTH działa po wpisaniu domena.pl, ale domena.pl/test.php już nie krzyczy o hasło i plik się normalnie uruchamia Komenda USERAGENT blokuje danego useragenta a mi zależy, żeby blokowało wszystkich useragentów oprócz "XXUserAgent" location / { auth_basic "AUTH"; auth_basic_user_file /etc/nginx/passwd; } location ~ /folder { root /usr/share/nginx/www; charset windows-1251; autoindex on; } if ($http_user_agent !~* "XXUserAgent") { return 444; } Udostępnij ten post Link to postu Udostępnij na innych stronach
spindritf 240 Zgłoś post Napisano Wrzesień 18, 2014 Pokaż konfigurację swojego vhosta chociaż, blok server {}. Udostępnij ten post Link to postu Udostępnij na innych stronach
felek1 0 Zgłoś post Napisano Wrzesień 18, 2014 (edytowany) Co do Useragent to strona mi się ładuje nawet jak wchodzę z chrome, explorera itp. A mam wtyczke do firefoxa w której sam sobie ustawiam USERAGENTA np. XXUserAgent server { #listen 80; ## listen for ipv4; this line is default and implied #listen [::]:80 default_server ipv6only=on; ## listen for ipv6 root /usr/share/nginx/www; index index.php index.html index.htm; # Make site accessible from http://localhost/ server_name localhost; location / { # First attempt to serve request as file, then # as directory, then fall back to displaying a 404. try_files $uri $uri/ /index.html; # Uncomment to enable naxsi on this location # include /etc/nginx/naxsi.rules location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } location / { auth_basic "AUTH"; auth_basic_user_file /etc/nginx/.htpasswd; } location ~ /folder { root /usr/share/nginx/www; charset windows-1251; autoindex on; } if ($http_user_agent !~* "XXUserAgent") { return 444; } } Edytowano Wrzesień 18, 2014 przez felek1 (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
spindritf 240 Zgłoś post Napisano Wrzesień 18, 2014 To musisz dodać te ograniczenia w bloku location ~ \.php$ {}, bo tak to skrypty php są obsługiwane normalnie. Udostępnij ten post Link to postu Udostępnij na innych stronach
felek1 0 Zgłoś post Napisano Wrzesień 18, 2014 Ok. Teraz ustawienie useragenta działa a AUTH na wszystkie inne pliki w /usr/share/nginx/www? Teraz jest tylko index.php Udostępnij ten post Link to postu Udostępnij na innych stronach
spindritf 240 Zgłoś post Napisano Wrzesień 18, 2014 (edytowany) Inne podpadają pod location / {} albo location /folder {} odpowiednio. Swoją drogą, tam powinien być alias, a nie root. Edytowano Wrzesień 18, 2014 przez spindritf (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
felek1 0 Zgłoś post Napisano Wrzesień 18, 2014 Ok. teraz juz działa Mój plik jest już chyba napisany poprawnie i zmieniłem roota tylko w klamrach location. Jeszcze nie wiem czy działa charset windows-1251 bo nie wiem jak to sprawdzić, ale myślę, że powinno być okej server { index index.php index.html index.htm; #listen 80; ## listen for ipv4; this line is default and implied #listen [::]:80 default_server ipv6only=on; ## listen for ipv6 #Make site accessible from http://localhost/ server_name localhost; location / { root /usr/share/nginx/www; auth_basic "AUTH"; auth_basic_user_file /etc/nginx/.htpasswd; # First attempt to serve request as file, then # as directory, then fall back to displaying a 404. try_files $uri $uri/ /index.html; # Uncomment to enable naxsi on this location # include /etc/nginx/naxsi.rules location ~ \.php$ { root /usr/share/nginx/www; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; if ($http_user_agent !~* "XXX2") { return 444; } } location ~ /folder { root /usr/share/nginx/www; charset windows-1251; autoindex on; } } Udostępnij ten post Link to postu Udostępnij na innych stronach
felek1 0 Zgłoś post Napisano Wrzesień 19, 2014 (edytowany) Zapomniałem jeszze jednej ostatniej rzeczy. Żeby skrypt AUTH BASIC i USERAGENT nie obejmował 2 plików. /usr/share/nginx/www/folder1/statystyki.php i /usr/share/nginx/www/folder2/statystyki.php Czy jest jeszcze mozliwość dodania blokady tych konfiguracji na te dwa pliki? Edytowano Wrzesień 19, 2014 przez felek1 (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach