Curs Php-mysql

1. Protectia cu parola a unui director

Uneori este nevoie sa protejam accesul la un anumit director din site, dar sa accordam totusi accesul extern anumitor persoane. Pentru aceasta este utila adaugarea unei parole.
Exista mai multe metode de a realiza acest lucru, cu ajutorul limbajelor de programare web: PHP, ASP, Perl.... Aici va fi prezentat modul de parolare a unui director folosind fisierul ".htaccess".

In primul rand trebuie sa creati un fisier numit ".htpasswd", care va contine numele de utilizator si parola criptata, apoi în fisierul ".htaccess" este introdusa calea catre ".htpasswd".
Pentru utilizatorii de UNIX, iata cum puteti crea prin intermediul shell-ului un fisier htpasswd (cum puteti crea parola criptata):

[mar@www mar]# cd /var/www/domeniu_meu/privat/
[mar@www privat]# htpasswd -c .htpasswd username
New password:
Re-type new password:
Adding password for user username
[root@www privat]#
- "cd /var/www/domeniu_meu/privat/" - ne deplasam catre directorul pe care dorim sa-l protejam, aici "privat"
- "htpasswd -c .htpasswd username" - creaza un utilizator "username" dupa care vom fi întrebati de parola
Puteti adauga utilizatori noi care sa aiba acces la acelasi director prin intermediul comenzii "htpasswd .htpasswd utilizator2", de data aceasta însa nu mai folositi optiunea "-c".
Daca doriti sa vedeti rezultatul, deschideti cu un editor de text fisierul ".htpasswd", veti descoperi ceva de genul:
username:$1$tEOlbaw7$v/mlwlw/pv1e34dB2JuE.1
utilizator2:$1$tEOlhyw7$v/mlw5w/pv1d62d92JmM.2
Daca doriti sa anulati accesul unui utlizator, stergeti linia respectiva.

Dupa ce au fost astfel create "utilizator" si "parola" in .htpasswd, introduceti urmatorul cod in .htaccess:
AuthType basic
AuthName "Acest director este protejat"
AuthUserFile /usr/local/www/domeniu_meu/privat/.htpasswd
AuthGroupFile /dev/null
Require valid-user
- Unde "/usr/local/www/domeniu_meu/privat/.htpasswd" este calea catre fisierul .htpasswd, care poate fi oriunde pe server.
- Linia care incepe cu "AuthName" contine textul care va fi afisat în promterul de login.protejat.

.htaccess trebue pus in fisierul protejat


Pentru serverele Apache instalate in Windows, pentru crearea fisierului .htpasswd cu parola criptata, urmati urmatorii pasi:

- Fisierul cu parole ".htpasswd" va fi creat în acelasi director cu executabilul htpasswd.exe. Daca doriti puteti sa-l mutati în alta parte, dar sa specificati in ".htaccess" calea corecta catre acesta.
Daca ulterior veti dori sa adaugati si alti utilizatori pentru accesarea directorului protejat, scrieti aceeasi comanda, fara "-c".

Pentru ca aceasta modalitate de protectie cu parola sa functioneze asigurati-va ca în fisierul de configurare "httpd.conf" a serverului Apache aveti comanda "AllowOverride all" si nu (AllowOverride none) - in linia unde 'AllowOverride' este precedat de un comentariu (marcat cu #) despre .htaccess.

2. Protectia cu parola a unui fisier

Daca doriti, puteti proteja cu parola si un anumit fisier, folosind .htaccess.
Ca si in cazul protectiei directoarelor, explicata mai sus, si aici este nevoie de fisieru ".htpasswd" in care sunt trecute numele si parola criptata. Crearea acestui fisier se realizeaza la fel ca in exemplul prezentat mai sus.
Dupa ce ati creat fisierul .htpasswd, adaugati in ".htaccess" urmatoarele comenzi:

# protejarea cu parola a unui fisier
<Files fisier.ext>
AuthType Basic
AuthName "Prompt"
AuthUserFile /home/path/.htpasswd
Require valid-user
</Files>
- Unde "fisier.ext" este numele fisierului care va fi protejat, iar "/home/path/.htpasswd" este calea catre fisierul ".htpasswd".
Plasati fisierul .htaccess în directorul in care se afla fisierul protejat.

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care tag defineste zona de click intr-o harta creata dintr-o imagine?
<map> <img> <area>
<img src="image.jpg" usemap="#map1">
<map name="map1">
  <area shape="rect" coords="9, 120, 56, 149" href="#">
  <area shape="rect" coords="100, 200, 156, 249" href="#">
</map>
Ce proprietate CSS indica ce sa se intample cand continutul unui element depaseste dimensiunile lui?
display overflow position
#id {
  overflow: auto;
}
Clic pe evenimentul care este declansat cand mouse-ul e deasupra unui obiect.
onclick onmouseover onmouseout
document.getElementById("id").onmouseover = function(){
  document.write("Sa ai Viata Buna");
}
Indicati variabila PHP ce contine datele adaugate in adresa URL, dupa caracterul "?".
$_SESSION $_GET $_POST
if(isset($_GET["id"])) {
  echo $_GET["id"];
}
Clic pe pronumele reflexiv care e potrivit in propozitia: "Marc is the boy ... won the prize".
who which whoever
Marc is the boy who won the prize.
- Marc e baiatul care a castigat premiul.
Clic pe pronumele reflexiv care e potrivit in propozitia: "Voy a ver al pintor de ... les hablé ayer".
que quien cuyo
Voy a ver al pintor de quien les hablé ayer.
- Ma duc sa vad pictorul despre care ti-am vorbit ieri.
Protejare cu parole folosind .htaccess

Last accessed pages

  1. Verbe modale - Modal verbs - CAN, COULD, MAY, MIGHT, MUST (65328)
  2. Ser, estar sau tener (1323)
  3. Viitor simplu si continuu - Future Tense Simple and Continuous (45024)
  4. Lectia 209, Recapitulare 189 (56)
  5. Gramatica limbii spaniole. Indrumator si prezentare generala (63748)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (617)
  2. Conditional IF in Limba Engleza - Fraze Conditionale (532)
  3. Gramatica limbii engleze - Prezentare Generala (439)
  4. Exercitii engleza - English Tests and exercises - Grammar (379)
  5. Coduri pt culori (362)