nasko_f
New Member
Здравейте, пускам тази тема защото съм посъбрал колекция от важни htaccess кодове, който са доста полезни, и реших да ги споделя с вас. От различни места ги събирах в текстов файл, и сега нямаше какво да правя и ще преведа и обесня колкото мога, кой за какво служи. Приятно четене.
1. Забраняване да се ползват изображения от вашият сайт, с линк.
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?domainname.com/ [nc]
RewriteRule .*.(gif|jpg|png)$ http://domainname.com/img/stop_stealing_bandwidth.gif[nc]
На domeinname.com слагате вашият домейн
2. Блокиране на всякакви заявки, към сайта.
С този код се блокират всякакъв вид заявки към сървара, който могат да са опасни, или да натоварват излишно, хост машината.
#Block bad bots
SetEnvIfNoCase user-Agent ^FrontPage [NC,OR]
SetEnvIfNoCase user-Agent ^Java.* [NC,OR]
SetEnvIfNoCase user-Agent ^Microsoft.URL [NC,OR]
SetEnvIfNoCase user-Agent ^MSFrontPage [NC,OR]
SetEnvIfNoCase user-Agent ^Offline.Explorer [NC,OR]
SetEnvIfNoCase user-Agent ^[Ww]eb[Bb]andit [NC,OR]
SetEnvIfNoCase user-Agent ^Zeus [NC]
<limit get="" post="" head="">
Order Allow,Deny
Allow from all
Deny from env=bad_bot
</limit>
3. Пренасочване на всеки, с изключение на избрани IP адреси.
Ако по някаква причина искате да имат достъп до сайта само определени IP адреси, ето кода:
ErrorDocument 403 http://www.domainname.com
Order deny,allow
Deny from all
Allow from 124.34.48.165
Allow from 102.54.68.123
На http://www.domainname.com и Allow from 124.34.48.165 знаете какво се прави.
4. SEO Friendly 301 Редирект
Това мисля че почти всеки го знае, но все пак. Ако сте сменили домейна си и искате да не получите наказание от гугъл, или сте сменили адреса на някоя страница която е индексирана, това е кода:
Redirect 301 /d/file.html http://www.domainname.com/r/file.html
5. Промяна на error страница както вие искате.
Това е ако ви е омръзнало да виждате една и съшта грешка error 404 и тн, с този код можете да промените error на каквото искате вие да пише.
ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php
6. IP бан лист.
На deny from просто поставете ip адресите който не желаете да имат достъп до сайта.
allow from all
deny from 145.186.14.122
deny from 124.15
7. Дефаут емайл адрес за сървъра.
Когато някой получи грешка в сървъра ще се показва емайла който сте задали за връзка.
ServerSignature EMail
SetEnv SERVER_ADMIN [email protected]
На [email protected] слагате вашият емайл.
8. Без питане дали да свали.
Обикновенно когато сваляте нещо компютъра ви пита дали да отвори файла, или да го запамети. С този код свалянето ще започне директно.
AddType application/octet-stream .pdf
AddType application/octet-stream .zip
AddType application/octet-stream .mov
Накрая пишете типовете файлове който искате да се свалят така, например .exe .rar и тн.
9. Защита на конкретен файл
Ако искате никои да няма достъп до определен файл, например config.php
#Protect the config.php File
<files config.php="">
order allow,deny
deny from all
</files>
10. Компресиране на файлове с mod_deflate
Компресиране на файлове с Gzip, с използването на mod_deflate. Този код се поставя най отгоре във вашият .htaccess файл(Можете да добавяте и .jpg|.gif|.png|.tiff|.ico mod_deflate ):
<ifmodule mod_deflate.c="">
<filesmatch ".(js|css)$"="">
SetOutputFilter DEFLATE
</filesmatch>
</ifmodule>
11. Add Expires Headers
The following code shows you how to add an expiration date on the headers.
<filesmatch ".(ico|pdf|flv|jpg|jpeg|png|gif|swf)$"="">
Header set Expires "Wed, 21 May 2010 20:00:00 GMT"
</filesmatch>
Този код незнам дали ще ви послужи за нещо, даже се затруднявам с превода.
12. Настройване на начална страница по ваш избор.
Ако искате при отваряне на домейна ви да се отваря определена страница, това е кода. Като на about.html слагате която вие искате, това може да е доста полезно на някой.
DirectoryIndex about.html
13. Защита на папки и файлове с парола.
#password-protect a file
<files secure.php="">
AuthType Basic
AuthName "Prompt"
AuthUserFile /home/path/.htpasswd
Require valid-user
</files>
#password-protect a directory
resides
AuthType basic
AuthName "Zashtitenata papka s parola"
AuthUserFile /home/path/.htpasswd
AuthGroupFile /dev/null
Require valid-user
14. Пренасочване на стар домейн към нов.
Ако сте сменили домейна си с друг, този код пренасочва към новия.
RewriteEngine On
RewriteRule ^(.*)$ http://www.domainname.com/$1 [R=301,L]
15. Force Caching
С този код съдържанието на сайта ви се зарежда по бързо, за потребители който вече са влизали в сайта ви. 86400 секунди се равняват на един ден.
FileETag MTime Size
ExpiresActive on
ExpiresDefault "access plus 86400 seconds"
16. Компресиране с Gzip
Ускорява зареждането на сайта. (незнам колко).
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
17. Премахване на категория от URL.
Ако искате да превърнете адреса си от: "http://yourdomain.com/category/name" на -> "http://yourdomain.com/name", добавете този код най отдолу във вашият .htaccess. Като category/ в htaccess файла го променяте така както се казва категорията която искате да промените. Не премахвайте ^
RewriteRule ^category/(.+)$ http://www.yourdomain.com/$1 [R=301,L]
18. Отказване на достъп, по директорийте.
С този код потребителите няма да могат да се ровят в директорийте като например в папката с плъгини на wordpress. Просто повишава защитата.
Options All -Indexes
19. Пренасочване на WordPress Feeds към FeedBurner
#Redirect wordpress content feeds to feedburner
<ifmodule mod_rewrite.c="">
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} !FeedBurner [NC]
RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC]
RewriteRule ^feed/?([_0-9a-z-]+)?/?$ http://feeds.feedburner.com/yourfeed [R=302,NC,L]
</ifmodule>
20. Отказване на коментари за wordpress.
С този код позволявате на потребители който са дошли например от гугъл само те да коментират, ако са дошли от друго място няма да могат. Разбирасе гугъл е само пример, трябва вие да изберете на мястото на yourblog.com
RewriteEngine On
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .wp-comments-post\.php*
RewriteCond %{HTTP_REFERER} !.*yourblog.com.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]
21. Премахване на разширение от URL адрес.
Кода премахва на края на адресите например .php или .html полезно е за сеото.
RewriteRule ^(([^/]+/)*[^.]+)$ /$1.php [L]
22. Премахване на www от URL
Превръщане на адреса от: www.example.com на example.com. на www\.domain\.com го правите така www\.vashiq domein\.com или нет или какъвто е. И отдолу пак въведете домейна ви.
#remove www from URI
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.domain\.com$ [NC]
RewriteRule ^(.*)$ http://domain.com/$1 [L,R=301]
23. Добавяне на наклонена черта в URL.
#trailing slash enforcement
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !#
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://domain.com/$1/ [L,R=301]
24. Лимит за качване на файл.
Сложете лимит за максимална големина на файл с този код:
LimitRequestBody 10240000
25. Блокиране на трафик от определен сайт.
Гугъл е само пример дане го оставите. Просто сложете адреса от който не искате да идват потребители.
# Block reffered traffic
RewriteEngine on
RewriteCond %{HTTP_REFERER} google\.com [NC]
RewriteRule .* – [F]
26. Пренасочване на всеки към избрана от вас страница, само без определено IP.
ErrorDocument 403 http://www.yahoo.com/
Order deny,allow
Deny from all
Allow from 208.113.134.190
27. Спиране на достъпа до сайта.
Този код е за временно спиране на сайта, ако се прави профилактика, или тепърва го създавате.
AuthName "Skoro"
AuthUserFile /home/sitename.com/.htpasswd
AuthType basic
Require valid-user
Order deny,allow
Deny from all
Allow from 248.183.134.190
Satisfy Any
28. Добавяне на език и енкодинг по подразбиране.
AddDefaultCharset UTF-8
DefaultLanguage en-US
29. Забрани изпълнението на скриптове.
Този код е за по голяма сигурност.
Options -ExecCGI
AddHandler cgi-script .php .pl .py .jsp .asp .htm .shtml .sh .cgi
30. Забрани заявки.
Забранява заявката към сървъра от "хакерчета".
RewriteCond %{REQUEST_METHOD} !^(GET|HEAD|OPTIONS|POST|PUT)
RewriteRule .* - [F]
31. Защита на php.cgi
<FilesMatch "^php5?\.(ini|cgi)$">
Order Deny,Allow
Deny from All
Allow from env=REDIRECT_STATUS
</FilesMatch>
32. Забраняване на определено IP да ползва вход в сайта.
SecFilterSelective REMOTE_ADDR "208\.113\.183\.103" "nolog,noauditlog,pass"
За позволяване на определени IP само да се логват:
SecFilterSelective REMOTE_ADDR "!^208\.113\.183\.103" "nolog,noauditlog,pass"
SecFilterSelective REMOTE_ADDR "208\.113\.183\.103" "log,auditlog,pass"
1. Забраняване да се ползват изображения от вашият сайт, с линк.
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?domainname.com/ [nc]
RewriteRule .*.(gif|jpg|png)$ http://domainname.com/img/stop_stealing_bandwidth.gif[nc]
На domeinname.com слагате вашият домейн
2. Блокиране на всякакви заявки, към сайта.
С този код се блокират всякакъв вид заявки към сървара, който могат да са опасни, или да натоварват излишно, хост машината.
#Block bad bots
SetEnvIfNoCase user-Agent ^FrontPage [NC,OR]
SetEnvIfNoCase user-Agent ^Java.* [NC,OR]
SetEnvIfNoCase user-Agent ^Microsoft.URL [NC,OR]
SetEnvIfNoCase user-Agent ^MSFrontPage [NC,OR]
SetEnvIfNoCase user-Agent ^Offline.Explorer [NC,OR]
SetEnvIfNoCase user-Agent ^[Ww]eb[Bb]andit [NC,OR]
SetEnvIfNoCase user-Agent ^Zeus [NC]
<limit get="" post="" head="">
Order Allow,Deny
Allow from all
Deny from env=bad_bot
</limit>
3. Пренасочване на всеки, с изключение на избрани IP адреси.
Ако по някаква причина искате да имат достъп до сайта само определени IP адреси, ето кода:
ErrorDocument 403 http://www.domainname.com
Order deny,allow
Deny from all
Allow from 124.34.48.165
Allow from 102.54.68.123
На http://www.domainname.com и Allow from 124.34.48.165 знаете какво се прави.
4. SEO Friendly 301 Редирект
Това мисля че почти всеки го знае, но все пак. Ако сте сменили домейна си и искате да не получите наказание от гугъл, или сте сменили адреса на някоя страница която е индексирана, това е кода:
Redirect 301 /d/file.html http://www.domainname.com/r/file.html
5. Промяна на error страница както вие искате.
Това е ако ви е омръзнало да виждате една и съшта грешка error 404 и тн, с този код можете да промените error на каквото искате вие да пише.
ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php
6. IP бан лист.
На deny from просто поставете ip адресите който не желаете да имат достъп до сайта.
allow from all
deny from 145.186.14.122
deny from 124.15
7. Дефаут емайл адрес за сървъра.
Когато някой получи грешка в сървъра ще се показва емайла който сте задали за връзка.
ServerSignature EMail
SetEnv SERVER_ADMIN [email protected]
На [email protected] слагате вашият емайл.
8. Без питане дали да свали.
Обикновенно когато сваляте нещо компютъра ви пита дали да отвори файла, или да го запамети. С този код свалянето ще започне директно.
AddType application/octet-stream .pdf
AddType application/octet-stream .zip
AddType application/octet-stream .mov
Накрая пишете типовете файлове който искате да се свалят така, например .exe .rar и тн.
9. Защита на конкретен файл
Ако искате никои да няма достъп до определен файл, например config.php
#Protect the config.php File
<files config.php="">
order allow,deny
deny from all
</files>
10. Компресиране на файлове с mod_deflate
Компресиране на файлове с Gzip, с използването на mod_deflate. Този код се поставя най отгоре във вашият .htaccess файл(Можете да добавяте и .jpg|.gif|.png|.tiff|.ico mod_deflate ):
<ifmodule mod_deflate.c="">
<filesmatch ".(js|css)$"="">
SetOutputFilter DEFLATE
</filesmatch>
</ifmodule>
11. Add Expires Headers
The following code shows you how to add an expiration date on the headers.
<filesmatch ".(ico|pdf|flv|jpg|jpeg|png|gif|swf)$"="">
Header set Expires "Wed, 21 May 2010 20:00:00 GMT"
</filesmatch>
Този код незнам дали ще ви послужи за нещо, даже се затруднявам с превода.
12. Настройване на начална страница по ваш избор.
Ако искате при отваряне на домейна ви да се отваря определена страница, това е кода. Като на about.html слагате която вие искате, това може да е доста полезно на някой.
DirectoryIndex about.html
13. Защита на папки и файлове с парола.
#password-protect a file
<files secure.php="">
AuthType Basic
AuthName "Prompt"
AuthUserFile /home/path/.htpasswd
Require valid-user
</files>
#password-protect a directory
resides
AuthType basic
AuthName "Zashtitenata papka s parola"
AuthUserFile /home/path/.htpasswd
AuthGroupFile /dev/null
Require valid-user
14. Пренасочване на стар домейн към нов.
Ако сте сменили домейна си с друг, този код пренасочва към новия.
RewriteEngine On
RewriteRule ^(.*)$ http://www.domainname.com/$1 [R=301,L]
15. Force Caching
С този код съдържанието на сайта ви се зарежда по бързо, за потребители който вече са влизали в сайта ви. 86400 секунди се равняват на един ден.
FileETag MTime Size
ExpiresActive on
ExpiresDefault "access plus 86400 seconds"
16. Компресиране с Gzip
Ускорява зареждането на сайта. (незнам колко).
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
17. Премахване на категория от URL.
Ако искате да превърнете адреса си от: "http://yourdomain.com/category/name" на -> "http://yourdomain.com/name", добавете този код най отдолу във вашият .htaccess. Като category/ в htaccess файла го променяте така както се казва категорията която искате да промените. Не премахвайте ^
RewriteRule ^category/(.+)$ http://www.yourdomain.com/$1 [R=301,L]
18. Отказване на достъп, по директорийте.
С този код потребителите няма да могат да се ровят в директорийте като например в папката с плъгини на wordpress. Просто повишава защитата.
Options All -Indexes
19. Пренасочване на WordPress Feeds към FeedBurner
#Redirect wordpress content feeds to feedburner
<ifmodule mod_rewrite.c="">
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} !FeedBurner [NC]
RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC]
RewriteRule ^feed/?([_0-9a-z-]+)?/?$ http://feeds.feedburner.com/yourfeed [R=302,NC,L]
</ifmodule>
20. Отказване на коментари за wordpress.
С този код позволявате на потребители който са дошли например от гугъл само те да коментират, ако са дошли от друго място няма да могат. Разбирасе гугъл е само пример, трябва вие да изберете на мястото на yourblog.com
RewriteEngine On
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .wp-comments-post\.php*
RewriteCond %{HTTP_REFERER} !.*yourblog.com.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]
21. Премахване на разширение от URL адрес.
Кода премахва на края на адресите например .php или .html полезно е за сеото.
RewriteRule ^(([^/]+/)*[^.]+)$ /$1.php [L]
22. Премахване на www от URL
Превръщане на адреса от: www.example.com на example.com. на www\.domain\.com го правите така www\.vashiq domein\.com или нет или какъвто е. И отдолу пак въведете домейна ви.
#remove www from URI
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.domain\.com$ [NC]
RewriteRule ^(.*)$ http://domain.com/$1 [L,R=301]
23. Добавяне на наклонена черта в URL.
#trailing slash enforcement
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !#
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://domain.com/$1/ [L,R=301]
24. Лимит за качване на файл.
Сложете лимит за максимална големина на файл с този код:
LimitRequestBody 10240000
25. Блокиране на трафик от определен сайт.
Гугъл е само пример дане го оставите. Просто сложете адреса от който не искате да идват потребители.
# Block reffered traffic
RewriteEngine on
RewriteCond %{HTTP_REFERER} google\.com [NC]
RewriteRule .* – [F]
26. Пренасочване на всеки към избрана от вас страница, само без определено IP.
ErrorDocument 403 http://www.yahoo.com/
Order deny,allow
Deny from all
Allow from 208.113.134.190
27. Спиране на достъпа до сайта.
Този код е за временно спиране на сайта, ако се прави профилактика, или тепърва го създавате.
AuthName "Skoro"
AuthUserFile /home/sitename.com/.htpasswd
AuthType basic
Require valid-user
Order deny,allow
Deny from all
Allow from 248.183.134.190
Satisfy Any
28. Добавяне на език и енкодинг по подразбиране.
AddDefaultCharset UTF-8
DefaultLanguage en-US
29. Забрани изпълнението на скриптове.
Този код е за по голяма сигурност.
Options -ExecCGI
AddHandler cgi-script .php .pl .py .jsp .asp .htm .shtml .sh .cgi
30. Забрани заявки.
Забранява заявката към сървъра от "хакерчета".
RewriteCond %{REQUEST_METHOD} !^(GET|HEAD|OPTIONS|POST|PUT)
RewriteRule .* - [F]
31. Защита на php.cgi
<FilesMatch "^php5?\.(ini|cgi)$">
Order Deny,Allow
Deny from All
Allow from env=REDIRECT_STATUS
</FilesMatch>
32. Забраняване на определено IP да ползва вход в сайта.
SecFilterSelective REMOTE_ADDR "208\.113\.183\.103" "nolog,noauditlog,pass"
За позволяване на определени IP само да се логват:
SecFilterSelective REMOTE_ADDR "!^208\.113\.183\.103" "nolog,noauditlog,pass"
SecFilterSelective REMOTE_ADDR "208\.113\.183\.103" "log,auditlog,pass"