• Acasă
  • Despre noi
  • Autori
  • Mărturii
  • Arhivă
  • Trimite Articol
  • Contact

WORLDIT

Lumea în 1 și 0.

  • Știri
    • Tehnologie
    • Tehnologie mobilă
    • Securitate
    • Developers
    • Știință
    • Benzi desenate
    • Jocuri
    • Intern
  • Tehnic
    • Browser
    • C#
    • C/C++
    • Challenge
    • HTML/CSS
    • Javascript, Ajax, jQuery
    • Open Source
    • PHP
    • Python
    • Securitate IT
    • Socializare
    • WordPress
    • Altele
  • Recenzii
  • Interviuri
  • Evenimente

Sa lucram cu fisiere .htaccess

29
  • Publicat de Andrei Avădănei
  • în PHP · Tehnic · Wordpress
  • — 30 ian., 2010 at 8:00 am

Zilele acestea am considerat sa mai trecem la articole putin mai tehnice, insa prefer sa facem acest lucru treptat. De aceea incepem cu cateva lucruri ce le putem face cu fisierul .htaccess. Vreau sa spun ca inainte de orice schimbare a unui fisier .htaccess sa fiti siguri ca aveti un backup creat fisierului respectiv, de siguranta.

Ce este .htaccess?

Fisierul .htaccess este fisierul cunoscut in majoritatea serverelor web(cel mai popular fiind Apache) ca fisierul de configurare la nivel de director. Practic, acest fisier este introdus in unul din foldere si ofera posibilitatea de a suprascrie unele dintre setarile serverului.

Majoritatea „tipurilor” ce le voi prezenta aici sunt foarte utile si necesare dupa parerea mea, neinsistand prea mul asupra unora din ele.

Schimbarea fisierului de configurare la nivel local

Daca nu sunteti multumit de numele ce il are fisierul(.htaccess) puteti sa redenumiti acest fisier si seta ca fiind noul configurator la nivel local. In situatia de mai jos, noul fisier care va fi special creat pentru configurarea la nivel local este .worlditConfig.

AccessFileName .worlditConfig

Redirectarea feedului wordpress catre Feedburner

Codul de mai jos va redirecta toate feedurile din interiorul site-ului, care au ca browser Feedburner sau FeedValidator, catre adresa de feedburner setata de tine.Tot ce trebuie sa faci este sa inlocuieste nume_feed de pe ultima linie de cod , cu numele fluxului tau da la Feedburner.Aceasta modificare este foarte utila atunci cand aveti nevoie de un management mai usor al statisticilor abonatilor tai.


 RewriteEngine on
 RewriteCond %{HTTP_USER_AGENT} !FeedBurner    [NC]
 RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC]
 RewriteRule ^feed/?([_0-9a-z-]+)?/?$ http://feeds.feedburner.com/nume_feed [R=302,NC,L]


Folosirea compresiei gzip

Aceasta va ajuta cu siguranta la optimizarea site-ului dumneavoastra, trimitand catre client fisierele comprimate,urmand sa fie decomprimate in momentul in care sunt descarcate de acesta.

AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html

Respingerea comentariilor ce nu au refferer

Aveti instalat pe WordPress Akismet, dar acesta scapa multe spamuri.O metoda destul de eficienta pentru a rezolva aceasta problema este de a verifica daca pagina are refferer provenind de pe blogul tau, deoarece un comentariu ce este dat direct de pe blog va avea ca refferer site-ul de pe care sa accesat fisierul wp-comments-post.php . Tot ce trebuie sa faceti este sa schimbati linia 4,unde este worldit.info cu numele blogului tau.Bineinteles ca aceasta schimbare nu garanteaza siguranta,insa micsoreaza procentul de spam primit pe blog. 🙂

RewriteEngine On
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .wp-comments-post\.php*
RewriteCond %{HTTP_REFERER} !.*worldit.info.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]

Redirectarea vizitatorilor catre o pagina temporara

Aveti nevoie de cateva ore in care sa testati sau sa faceti cateva schimbari. Pentru asta e nevoie de un plugin ce redirecteaza catre o pagina temporar creat pentru astfel de situatii.In cazul in care nu doriti sa activati inca un plugin, puteti modifica astfel fisierul .htaccess.Tot ce trebuie sa faceti este schimbati temporar.html de pe a doua si ultima linie cu numele fisierului dumneavoastra. Pentru ca tu sa ai totusi acces la blog, modifica pe a 3a linie IP-ul respectiv cu al tau.

RewriteEngine on
RewriteCond %{REQUEST_URI} !/temporar.html$
RewriteCond %{REMOTE_ADDR} !^123\.123\.123\.123
RewriteRule $ /temporar.html [R=302,L]

Permiteti accesul doar IP-ului tau in wp-admin

Recomand aceasta metoda doar in cazul in care blogul nu este unul colectiv si sunteti singurul care ar trebui sa aiba acces la wp-admin. De asemenea trebuie sa aveti grija ca IP-ul sa nu fie dinamic. Modificati IP-ul xx.xx.xx.xx cu al dumneavoastra. Daca aveti mai multe IP-uri, atunci puteti adauga mai multe linii ca cea in care ati modificat IP-ul.

AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "Example Access Control"
AuthType Basic

order deny,allow
deny from all
allow from xx.xx.xx.xx

Banarea unui IP

Numai suportati un IP, sau doriti sa banati accesul unor clase de IP-uri de spammeri? Modifica xx.xx.xx.xx cu IP-ul ce doresti sa il banezi. Daca doresti sa banezi mai multe IP-uri pur si simplu adauga inca o linie similara cu cea in care trebuie sa editezi IP-ul.


order allow,deny
deny from xx.xx.xx.xx
allow from all

Activeaza cache-ul browserului

Revenim la optimizarile site-ului. O alta metoda foarte buna de a optimiza viteza de incarcare a site-ului este activarea cache-ului browserului. Aceasta modificare va return codul 304(fisier nemodificat) pentru fisierele cu extensiile jpg,gif,png,css,js. 🙂

FileETag MTime Size

  
       ExpiresActive on
       ExpiresDefault "access plus 1 year"
   

Protejeaza fisierul .htaccess

Cea mai buna metoda de a proteja fisierul .htaccess de ochii strainilor este de a-i resping pe acestea.


order allow,deny
deny from all
satisfy all

Limiteaza dimensiunea unui fisier incarcat

 LimitRequestBody 10240000

Mesaje custom pentru diverse erori

Acest lucru ajuta la personalizarea fisierelor ce apar in momentul in care pagina accesata returneaza un cod precum 404,403,500 etc.

ErrorDocument 404 /negasit.php
ErrorDocument 403 /interzis.php
ErrorDocument 500 /eroare.php

Dezactiveaza listarea browserelor

Dezactivarea listarii directoarelor este o practica des folosita pentru a te asigura ca un personaj rau intentionat nu afla numele fisierelor prea usor.Este indicat sa folosesti acest lucru mai ales daca sunt directoare fara un fisier index.

Options All -Indexes

Acestea sunt cateva din secretele fisierelor .htaccess. Daca aveti de adaugat la acest articol, va rog nu ezitati! 🙂

Etichete: despre htaccessfisiere htaccesshtaccesshtaccess tripstotul despre htaccestutorialtutorial htaccess

— Andrei Avădănei a scris 1246 articole

Andrei scrie pe worldit.info din vara lui 2011. Este fondatorul Asociatiei Centrul de Cercetare in Securitate Informatica din Romania - CCSIR si coordoneaza DefCamp, cea mai importanta conferinta de securitate informatica & hacking din Europa Centrala si de Est. Andrei ofera in cadrul Bit Sentinel servicii de securitate informatica, penetration testing, security management, recuperarea de pe urma unui atac cibernetic, training-uri si workshop-uri.

  • Articolul anterior Problema kperms, Campion 2009
  • Articolul următor Firefox pentru telefoane este disponibil pentru platforma Maemo

29 Comentarii

  1. Korbu spune:
    aprilie 5, 2010 la 12:23 pm

    Sa zicem ca eu gazduiesc doua site-uri pe un singur host:
    Site-A si Site-B si vreau sa banez un ip sa nu mai intre pe Site-A.
    Daca banez ip-ul respectiv din .htaccess, acesta nu va mai putea sa intre nici pe Site-B. Corect?
    Cum ii banez accesul din .htaccess doar pe Site-A ?

  2. Tudy spune:
    aprilie 5, 2010 la 12:28 pm

    Pai daca acel .htaccess il pui in web root la Site-A, asta nu afecteaza cu nimic Site-B.

    Singurul caz in care acelasi .htaccess ar afecta ambele site-uri e daca ar fi vorba de fapt de unul si acelasi site sub doua nume diferite (si care folosesc aceleasi fisiere in backend, adica acelasi storage location pe server).

  3. Adrian spune:
    iulie 8, 2010 la 12:40 pm

    Am si eu o probltma cu fisierul de .htaccess. Vreau sa imi incarce direct index.php si am scris asa
    RewriteEngine on

    RewriteRule ^$ index.php?page=1
    RewriteRule ^home/$ index.php?page=1
    RewriteRule ^Cine_suntem/$ index.php?page=2
    RewriteRule ^Cum_comand/$ index.php?page=3
    RewriteRule ^Informatii_utile/$ index.php?page=4
    RewriteRule ^Ne-au_ales/$ index.php?page=5
    RewriteRule ^Contact/$ index.php?page=6 [L]

    dar imi da eroarea asta
    Internal Server Error

    The server encountered an internal error or misconfiguration and was unable to complete your request.

    Please contact the server administrator, admin@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.

    More information about this error may be available in the server error log.]

    Si in wamp asta [Thu Jul 08 12:39:20 2010] [alert] [client 127.0.0.1] C:/wamp/www/.htaccess: Invalid command ‘\xff\xfeR’, perhaps misspelled or defined by a module not included in the server configuration.

    Mentionez ca am bifat modulul de rewrite.
    Multumesc frumos.

  4. Ioni spune:
    octombrie 7, 2010 la 10:01 pm

    Pentru redirectionare temporara nu se foloseste 307?

  5. Tudy spune:
    octombrie 7, 2010 la 10:42 pm

    301: Moved Permanently, 302: Found [Elsewhere], 307: Temporary Redirect

    🙂

  6. Para spune:
    ianuarie 11, 2011 la 8:19 pm

    Warning: ob_start() [ref.outcontrol]: output handler ‘ob_gzhandler’ conflicts with ‘zlib output compression’ in /home/para100/public_html/browse.php on line 3

    ma puteti ajuta ? ce sa fac sa dispara aceasta ?

  7. Andrei Avădănei spune:
    ianuarie 11, 2011 la 8:26 pm

    O idee e „error_reporting(0);”.

    O alta e dezactivarea (stergerea) ob_start din fisierele PHP sau ob_gzhandler(una din ele). 🙂

  8. Andrei spune:
    ianuarie 17, 2011 la 6:48 am

    Excelent articolul. GG.

  9. PM spune:
    octombrie 25, 2011 la 3:23 pm

    Buna

    Linkurile de pe un site de-al meu arata asa:
    nume_site.ro/?id2=0000
    si as vrea sa arate asa:
    nume_site.ro/titlu_pagina.html

    Poti sa imi spui ce ar trebui sa scriu in .htaccess pentru a le afisa cu titlu.html?

    Multumesc

« Comentarii mai vechi

  • Facebook

    WorldIT.info
  • Ultimele Atacuri Cibernetice din Romania – RO Hacked

    [wp_rss_retriever url="https://rohacked.bit-sentinel.com/feed/" excerpt="none" items="5" read_more="false" new_window="true" thumbnail="false" cache="0"] RO Hacked este registrul atacurilor cibernetice din România.
  • Caută

  • Articole Recomandate

    • Recent Posts
    • Tags
    • Număr record de participanți la DefCamp 2015, cel mai important eveniment dedicat securității cibernetice din Europe Centrala si de Estdecembrie 2, 2015
    • La DefCamp 2015 vei afla prin ce tehnici pot fi evitate măsurile de securitate ale sistemelor informatice criticeoctombrie 16, 2015
    • Ultima sansa sa rezervi bilete de tip Early Bird la DefCamp 2015septembrie 1, 2015
    • 15 sfaturi despre cum poti deveni un programator bun venite de la specialisti romaniaugust 4, 2015
    • algoritmica Android antivirus Apple Avadanei Andrei benzi desenate BitDefender blog browser C++ Chrome concurs eveniment Facebook Firefox Google google chrome hacking html5 infografic informatica internet Internet Explorer IT javascript linux Microsoft Mozilla Firefox online PHP programare retea sociala review Romania securitate Tehnologie Twitter web Windows Windows 7 Wordpress WorldIT worldit.info Yahoo! YouTube
  • mai 2022
    L Ma Mi J V S D
     1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031  
    « dec.    
  • Link-uri Sponsorizate

    • laptop second hand

    • Calculatoare Second Hand

    • cod voucher pc garage

  • Home
  • Tehnic
  • PHP
  • Sa lucram cu fisiere .htaccess
  • Important

    • Bit Sentinel
    • Centrul de Cercetare în Securitate Informatică din România
    • DefCamp
  • Prieteni

    • BetiT.ro
    • bijuterii handmade
    • Computerica | Resurse gratuite PC
    • Descopera.org
    • Gadgeturi si IT – Giz.ro
  • Prieteni

    • PC – Config
    • RO Hacked
    • Stiri IT

Copyright © 2009-2014 WORLDIT. Toate drepturile Rezervate.
Termeni și condiții | Contact | Licența Creative Commons