apache rewrite to www

ideea e ca pe orice domeniu se poate intra in doua moduri : domeniu.tld si www.domeniu.tld ( iar daca nu se poate intra prin una din aceste modalitati – aceasta reprezinta anomalii ). Dar, totusi, se doreste raspandirea pe internet doar a unui link dintre acestea 2: doar domeniu.tld sau doar www.domeniu.tld, pentru ca ele pot fi vazute de motoarele de cautare ca 2 domenii diferite.

Acum reprezint o modalitate de a lasa ambele domenii valide si facem doar astfel ca domeniu.tld sa redirectioneze automat catre www.domeniu.tld .

Acest lucru este posibil cu modulul rewrite din apache2. Si pentru asta modificam fisierul .htaccess cu urmatorul continut:

Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^www\.domeniu\.tld$ [NC]
RewriteRule ^(.*)$ http://www.domeniu.tld/$1 [R=301,L]

acum orice accesare a url-ului domeniu.tld va returna un cod de status : 301 = Moved Permanently ( A status code of 301 tells a client that the resource they asked for has permanently moved to a new location. The response should also include this location. It tells the client to use the new URL the next time it wants to fetch the same resource. ) si va redirectiona catre www.domeniu.tld

htaccess options -Indexes

In momentul cand ai un site, cu continut, si se incearca deschiderea unui URL care directioneaza catre un directoriu al site-ului si in acel directoriu nu este prezent nici un fisier de index al directoriului ( DirectoryIndex, exemplu: index.html, index.php, default.html ) in acel directoriu, atunci serverul va afisa o pagina cu o lista a tuturor fisierelor/directoare din directoriu respectiv. Acesta este considerata o problema grava in securitatea site-ului caci serverul este setat ca implicit sa arate acest gen de informatii.

Noi trebuie explicit sa dezactivam aceasta optiune. Ea se poate face in 2 locuri specificand optiunea prin :

Options -Indexes

Minusul ( – ) din fata lui Indexes inseamna dezactivarea optiunii.

Exemplu la setarea serverului apache cand se seteaza domeniile si accesul la directorii:

<VirtualHost *:80>
  ServerName svn.com
  ServerAdmin webmaster@puk.ro
  DocumentRoot /var/www/svn.com
  ErrorLog /var/log/apache2/svn.com.log
  CustomLog /var/log/apache2/svn.com-access.log combined
  Options -Indexes
</VirtualHost>

Iar daca nu aveti acces la aceste fisiere de configurare, se poate dezactiva optiunea specificand linia in fisierul .htaccess care poate fi pus in root-ul site-ului:

Options -Indexes
#aici alte reguli pentru .htaccess

atat.

[apache] custom 404 error page

Fiecare dintre noi a intra pe o pagina web care nu exista. Asta se poate intimpla din mai multe cauze  : culegi url de mana si gresesti vre-o 2 caractere, sau au fost facute modificari pe site si astfel o pagina veche nu mai este disponibila. Motive si cauze sunt multe, ideea e ca la intrarea intr-un url invalid, se deschide o pagina cu eroarea 404 – pagina care este definita la nivel de server si… arata foarte prost.

( exemplu de o pagina 404 )

De aceea e bine sa customizezi aceasta pagina ca sa poti prelucra informatiile si sa directezi frumos utilizatorul pe calea cea buna.

Continue reading [apache] custom 404 error page