Arhiva pentru tagul “htaccess”

Ceva în plus despre redirectări

A trecut vremea când legăturile se terminau în .html, sau .php sau erau ceva de genul www.situlmeu.ro/produs.php?id=14&catelog=fructe&raion=detergent. Astăzi de la URL-uri ne aşteptăm să fie prietenoase, „citibile”, uşor de comunicat şi la nevoie de memorat. Toate CMS-urile care se respectă oferă linkuri frumoase. Dar dacă ne facem noi aplicaţia? Atunci trebuie să rezolvăm noi problemele. O cale este să pasăm totul lui index.php (cum face WordPress de exemplu), dar de dragul exemplelor didactice nu vom face aşa. Să vedem deci nişte cazuri. Avem situl cu index.php făcând mai totul, dar să zicem că avem un login.php pentru identificare şi logout.php pentru ieşire.

Options +FollowSymlinks
RewriteEngine On
RewriteRule ^identificare/$ /login.php [NC,L]

Primele linii nu le vom mai repeta, şi luaţi-le ca fiind de musai în deschidere :). Linia a 3-a face ca cine scrie www.situlmeu.ro/identificare/ să apeleze de fapt www.situlmeu.ro/login.php dar fără să se vadă aceasta (nu este deci redirectare, ci un fel de …


Redirectări permanente prin diverse metode

Recent am avut nevoie la un anumit sit să schimb URL-urile legate de luni de la forma lungă la forma scurtă. Totuşi, am vrut ca indexările existente şi cine cumva scrie manual URL-ul să nu aibă parte de o eroare, ci să fie dus la noua locaţie, mai scurtă. Drept urmare – evident! – aveam nevoie de redirectări permanente. În paranteză fie spus, problema era sub WordPress, dar nu apelez la WordPress când nu e de musai. Aşa că m-am uitat puţin cum pot via .htaccess. E simplu! Dar mai simplu este dacă ne face altul treaba, nu?

imagine

De aceea vă recomand 301 Redirect Code Generator, un mic instrument ce îşi face treaba cu brio! Practic dai URL-ul vechi şi …


Trucuri utile cu .htaccess (II)

În 2009 aţi putut citi aici, pe CNet.ro, articolul Trucuri utile cu .htaccess. Astăzi vă propun un fel de continuare. De mai multe săptămâni ţin acest link 10+ .htaccess snippets to optimize your website la păstrare, dar abia acum am avut timp să mă uit peste el şi să spun “uau, uau, uau”. Sunt coduri foarte utile, recomandabile webmasterilor care au curajul să facă modificări pe .htaccess. Nu vreau să sperii: e un fişier text la urma urmelor. Dar pentru cine nu înţelege măcar minimal problema, e cu risc (cel mai bine un backup al fişierului). Din cele zece coduri voi cita câteva. De exemplu codul care permite ca anumite tipuri de fişiere să nu fie deschise în navigator ci automat oferite spre descărcare.

<Files *.xls>
  ForceType application/octet-stream
  Header set Content-Disposition attachment
</Files>
<Files *.eps>
  ForceType application/octet-stream
  Header set Content-Disposition attachment
</Files>

Sau un alt cod pentru caching.

# …


Ţine ascuns situl în lucru (II)

Despre cum să ţii ascuns situl în lucru am mai vorbit acum vreo doi ani, aici. Atunci prezentam o soluţie PHP (pe care o folosesc şi astăzi frecvent). Cum între timp m-am mai împrietenit cu .htaccess, folosesc uneori şi această metodă. Să zicem că aveţi un sit la care lucraţi. Adresa Dvs IP (nu o ştiţi? încărcaţi AdresaMeaIP.ro şi o aflaţi imediat) este, să zicem, de dragul exemplului, 111.222.111.222, iar a clientului Dvs este 33.44.55.66. Cum facem ca doar Dvs şi el să poată să vadă situl în construcţie? Simplu: îi respingem pe toţi cei care nu au IP-ul Dvs sau al clientului. Vedeţi mai jos codul.

[PHP]order deny,allow
deny from all
allow 111.222.111.222
allow 33.44.55.66[/PHP]

Evident, în codul de mai sus puteţi multiplica linia cu „allow” pentru oricâte IP-uri doriţi să aibă acces. Dar să zicem că ceilalţi, care poate ştiu domeniul dar nu trebuie să vadă situl, am dori …


301 Redirect pentru pagini mutate

Din capitolul „să nu descoperiţi apa caldă, dacă tot am descoperit-o eu” doresc să vorbim puţin despre 301 Redirect. Pe Wikipedia puteţi citi la URL Redirection despre o plajă mai largă de cazuri. De exemplu 307 este codul pentru redirectare temporară, dar eu acum vreau să mă opresc strict la redirectarea permanentă. După cum cel puţin apropiaţii ştiu, am migrat recent Catholica.ro din ASP în PHP. Evident s-a produs o maaare „varză” la capitolul linkuri. În primul rând cele 20.000 de ştiri au ajuns aruncate în aer.

Într-o primă fază, am luat pagina 404 din WordPress, am interceptat că se încearcă încărcarea unei pagini de ştiri (formatul era: www.catholica.ro/stiri/show.asp?id=12345) şi detectam noul ID al ştirii şi respectiv unde să fac redirectarea. Nu era însă o soluţie 100% SEO. Dacă vrei să fi elegant cu motoarele de căutare trebuie să le spui când se încarcă o adresă veche: hei, aici …


Securitatea în WordPress

Indiferent că ai un blog nișat cu mulți vizitatori sau doar un blog personal pe care îl folosești pentru a ține legătura cu familia sau un cerc restrâns de prieteni trebuie să ai în vedere securitatea blogului tău. Din păcate, nu prea mulți bloggeri dau o importanță acestui aspect și nu puține au cazurile, vezi de exemplu ultima vulnerabilitate a WordPress, în care unii au avut de pierdut mai mult decât și-ar fi imaginat. Nu vreau să fiu genul panicard, dar securitatea unui blog nu este chiar de neglijat, mai ales dacă îți pasă de munca ta, de timpul și eforturile investite.

Deși nici un blog nu se poate mândri că este 100% securizat împotriva atacurilor, există o serie de măsuri pe care le poți implementa pentru a spori securitatea. Nu trebuie să fii expert pentru a le aplica, doar să urmezi niște instrucțiuni simple.


Trucuri utile cu .htaccess

Fișierul .htaccess, pe lângă obișnuitele reguli de permalinks, poate fi folosit pentru o sumedenie de trebușoare utile de la redirectări până la banarea unor referrers. Doar câteva exemple pe care le puteți lua cu copy/paste, eventual modifica unde este necesar.

Regulile generale de permalinks:

[HTML]
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
[/HTML]

Redirectarea de la un domeniu vechi spre cel nou – dacă păstrezi și structura permalinks se va redirecta automat spre articolul corespunzător de pe noul domeniu:

[HTML]Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://www.domeniunou.ro/$1 [R=301,L][/HTML]

Redirectare de la non-www la www:

[HTML]Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^domeniultau.ro [nc]
rewriterule ^(.*)$ http://www.domeniultau.ro/$1 [r=301,nc][/HTML]

Mărirea limitei de upload a fișierelor și a timpului de execuție – nu exagerați prea mult totuși peste limitele impuse de cei ce îți asigură găzduirea! În exemplu de mai jos limita de upload este mărită la 10 Mb, iar timpul de rulare al unui script la 60 secunde, util mai ales pentru importul …