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 afiseaza textul oblic?
<strong> <pre> <em>
<p>Cursuri, Jocuri, Anime: <em>www.MarPlo.net</em></p>
Care proprietate CSS defineste spatiul dintre continutul elementului si bordura lui?
margin padding position
h3 {
  padding: 2px 0.2em;
}
Clic pe metoda ce returneaza primul element indicat de selectorii specificati.
getElementsByName() querySelector() querySelectorAll()
// preia primul Div cu class="cls", si afiseaza continutul
var elm = document.querySelector("div.cls");
alert(elm.innerHTML);
Indicati variabila PHP ce contine datele din formular trimise cu method="post".
$_SESSION $_GET $_POST
if(isset($_POST["field"])) {
  echo $_POST["field"];
}
Indicati pronumele corespunzator celui din paranteza in propozitia: "(Noi) speak english".
I They We
We speak english.
- Noi vorbim engleza.
Indicati pronumele corespunzator celui din paranteza in propozitia: "(Noi) hablamos español".
Ellos Vosotros Nosotros
Nosotros hablamos español.
- Noi vorbim spaniola.
Protejare cu parole folosind .htaccess

Last accessed pages

  1. Conditional IF in Limba Engleza - Fraze Conditionale (121725)
  2. Frica nu se justifica sub nicio forma (22)
  3. Partea a doua. Exercitii zilnice 221-365 (387)
  4. Pronumele in limba engleza - Pronouns (53158)
  5. Prepozitii - Prepositions (33399)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (616)
  2. Gramatica limbii engleze - Prezentare Generala (334)
  3. Exercitii engleza - English Tests and exercises - Grammar (287)
  4. Gramatica limbii spaniole. Indrumator si prezentare generala (277)
  5. Cursuri limba engleza gratuite si lectii online (228)