.htaccess: Skirtumas tarp puslapio versijų

Iš PHP, MySQL.
Peršokti į: navigaciją, paiešką
 
(nerodoma 6 tarpinės versijos, sukurtos to paties naudotojo)
1 eilutė: 1 eilutė:
 
'''.htaccess''' (angl. hypertext access) yra plačiai naudojamas web serverių (daugiausiai [[Apache]]) nustatymų katalogo(direktorijos) lygmenyje failo (bylos) pavadinimas. Kitaip sakant .htaccess faile nurodytos web serveriui skirtos direktyvos galios tam ir žemesnio lygios katalogams nepriklausomai nuo to, kokie yra globalūs web serverio nustatymai. Failo pavadinimas prasideda tašku, nes pagal susitarimą unix tipo aplinkose tokie failai yra slepiami (hidden).
 
'''.htaccess''' (angl. hypertext access) yra plačiai naudojamas web serverių (daugiausiai [[Apache]]) nustatymų katalogo(direktorijos) lygmenyje failo (bylos) pavadinimas. Kitaip sakant .htaccess faile nurodytos web serveriui skirtos direktyvos galios tam ir žemesnio lygios katalogams nepriklausomai nuo to, kokie yra globalūs web serverio nustatymai. Failo pavadinimas prasideda tašku, nes pagal susitarimą unix tipo aplinkose tokie failai yra slepiami (hidden).
 +
 +
Per .htaccess failą galima konfigūruoti ne tik patį apache web serverį, bet ir jo modulius, pvz. tokius populiarius, kaip: [[mod_rewrite]], [[mod_auth]] ir pan.
 +
 +
== Pavyzdžiai ==
 +
301 vieno failo perkėlimas (redirect'as):
 +
<pre>
 +
Redirect 301 /senas/forumas_kuriamas.html http://www.mysql.lt/forumas/
 +
</pre>
 +
301 perkėlimas į kitą adresą:
 +
<pre>
 +
Redirect 301 / http://www.mysql.lt
 +
</pre>
 +
"www" reikalavimas adrese:
 +
<pre>
 +
Options +FollowSymLinks
 +
RewriteEngine On
 +
RewriteBase /
 +
RewriteCond %{REQUEST_URI} !^/robots\.txt$
 +
RewriteCond %{HTTP_HOST} !^www\.mysql\.lt$ [NC]
 +
RewriteRule ^(.*)$ http://www.mysql.lt/$1 [R=301,L]
 +
</pre>
 +
"www" reikalavimas "neprisirišant" prie domeno:
 +
<pre>
 +
Options +FollowSymLinks
 +
RewriteEngine On
 +
RewriteBase /
 +
RewriteCond %{REQUEST_URI} !^/robots\.txt$ [NC]
 +
RewriteCond %{HTTP_HOST} !^www\.[a-z-]+\.[a-z]{2,6} [NC]
 +
RewriteCond %{HTTP_HOST} ([a-z-]+\.[a-z]{2,6})$ [NC]
 +
RewriteRule ^/(.*)$ http://%1/$1 [R=301,L]
 +
</pre>
 +
Nelesti kitiems tinklapiams tiesiogiai naudoti Jūsų tinklapio resursų (jpg, gif failų):
 +
<pre>
 +
RewriteEngine on
 +
RewriteCond %{HTTP_REFERER} !^$
 +
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mysql\.lt/.*$ [NC]
 +
RewriteRule \.(gif|jpg)$ - [F]
 +
</pre>
 +
Jeigu norite, kad aukščiau pateiktame pavyzdyje būtų rodomas tam tikras paveiksliukas:
 +
<pre>
 +
RewriteRule \.(gif|jpg)$ http://www.mysql.lt/nenaudok_mano_srauto.gif [R,L]
 +
</pre>
 +
Uždrausti galimybę naršyrti po katalogus:
 +
<pre>
 +
IndexIgnore *
 +
</pre>
 
== Nuorodos ==
 
== Nuorodos ==
 
* http://httpd.apache.org/docs/1.3/howto/htaccess.html
 
* http://httpd.apache.org/docs/1.3/howto/htaccess.html
5 eilutė: 51 eilutė:
 
* http://httpd.apache.org/docs/2.2/howto/htaccess.html
 
* http://httpd.apache.org/docs/2.2/howto/htaccess.html
 
[[Kategorija:DUK]]
 
[[Kategorija:DUK]]
 +
[[Kategorija:Apache]]

Dabartinė 12:52, 1 gruodžio 2008 versija

.htaccess (angl. hypertext access) yra plačiai naudojamas web serverių (daugiausiai Apache) nustatymų katalogo(direktorijos) lygmenyje failo (bylos) pavadinimas. Kitaip sakant .htaccess faile nurodytos web serveriui skirtos direktyvos galios tam ir žemesnio lygios katalogams nepriklausomai nuo to, kokie yra globalūs web serverio nustatymai. Failo pavadinimas prasideda tašku, nes pagal susitarimą unix tipo aplinkose tokie failai yra slepiami (hidden).

Per .htaccess failą galima konfigūruoti ne tik patį apache web serverį, bet ir jo modulius, pvz. tokius populiarius, kaip: mod_rewrite, mod_auth ir pan.

Pavyzdžiai

301 vieno failo perkėlimas (redirect'as):

Redirect 301 /senas/forumas_kuriamas.html http://www.mysql.lt/forumas/

301 perkėlimas į kitą adresą:

Redirect 301 / http://www.mysql.lt

"www" reikalavimas adrese:

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

"www" reikalavimas "neprisirišant" prie domeno:

Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/robots\.txt$ [NC]
RewriteCond %{HTTP_HOST} !^www\.[a-z-]+\.[a-z]{2,6} [NC]
RewriteCond %{HTTP_HOST} ([a-z-]+\.[a-z]{2,6})$ [NC]
RewriteRule ^/(.*)$ http://%1/$1 [R=301,L]

Nelesti kitiems tinklapiams tiesiogiai naudoti Jūsų tinklapio resursų (jpg, gif failų):

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mysql\.lt/.*$ [NC]
RewriteRule \.(gif|jpg)$ - [F]

Jeigu norite, kad aukščiau pateiktame pavyzdyje būtų rodomas tam tikras paveiksliukas:

RewriteRule \.(gif|jpg)$ http://www.mysql.lt/nenaudok_mano_srauto.gif [R,L] 

Uždrausti galimybę naršyrti po katalogus:

IndexIgnore *

Nuorodos