Владельцам 3.8.6: не поставили патч - потеряли форум!

Файловый Архив

  • Неограниченное количество категорий и суб-категорий
  • Настройки прав доступа по группам
  • Настройки прав доступа по каждой категории
  • Предпросмотр медиа файлов: FLV, IFLV, F4A, F4V, MP4, MP3, MOV и других...
  • Мультизагрузка файлов - SWFUploader
  • Добавление файлов с сервера
Подробности и история обновлений продукта в этой теме
Loading

Go Back   форум vBSupport.org > > >
Register Изображения Меню vBsupport Files Manager Аллея Звёзд Реклама на форуме Search Today's Posts Mark Forums Read
  • Мемберка
  • Администраторам
  • Premoderation
  • For English speaking users
  • Изменения в правах
  • Каталог Фрилансеров
Пароли на скачивание файлов в Member Area меняются автоматически каждый день
Если вам нужно скачать какой то скрипт, за паролем ко мне в ЛС
привет какирам kerk
Ещё раз обращаем Ваше внимание: всё, что Вы скачиваете и устанавливаете на свой форум, Вы устанавливаете исключительно на свой страх и риск.
Сообщество vBSupport'а физически не в состоянии проверять все стили, хаки и нули, выкладываемые пользователями.
Помните: безопасность Вашего проекта - Ваша забота.
Убедительная просьба: при обнаружении уязвимостей или сомнительных кодов обязательно отписывайтесь в теме хака/стиля
Спасибо за понимание
На форуме введена премодерация ВСЕХ новых пользователей

Почта с временных сервисов, типа mailinator.com, gawab.com и/или прочих, которые предоставляют временный почтовый ящик без регистрации и/или почтовый ящик для рассылки спама, отслеживается и блокируется, а так же заносится в спам-блок форума, аккаунты удаляются
for English speaking users:
You may be surprised with restriction of access to the attachments of the forum. The reason is the recent change in vbsupport.org strategy:

- users with reputation < 10 belong to "simple_users" users' group
- if your reputation > 10 then administrator (kerk, Luvilla) can decide to move you into an "improved" group, but only manually

Main idea is to increase motivation of community members to share their ideas and willingness to support to each other. You may write an article for the subject where you are good enough, you may answer questions, you may share vbulletin.com/org content with vbsupport.org users, receiving "thanks" equal your reputation points. We should not only consume, we should produce something.

- you may:
* increase your reputation (doing something useful for another members of community) and being improved
* purchase temporary access to the improved category:
10 $ for 3 months. - this group can download attachments, reputation/posts do not matter.
20 $ for 3 months. - this group can download attachments, reputation/posts do not matter + adds eliminated + Inbox capacity increased + files manager increased permissions.

Please contact kerk or Luvilla regarding payments.

Important!:
- if your reputation will become less then 0, you will be moved into "simple_users" users' group automatically.*
*for temporary groups (pre-paid for 3 months) reputation/posts do not matter.
Не можете скачать вложение?
Изменения в правах групп пользователей
внимательно читаем эту и эту темы
Короткая версия - тут
Уважаемые пользователи!

На форуме открыт новый раздел "Каталог фрилансеров"

и отдельный раздел для платных заказов "Куплю/Закажу"

 
 
Old  
VipeR
Private Person
Developer
 
VipeR's Avatar
Arrow Админ Всея Сети 24

Данную тему я полностью просвещаю Apache'у, его настройке и решению проблем. Данная тема будет полезна как и хостерам, так и простым клиентам хостинг-сервисов.
В этой теме подробно рассмотрим все аспекты, дабы избежать проблем и грамотно настроить сервер, обеспечив тем самым стабильную работу.

В данной теме будет публиковаться только информация, проблемы и их решения. Чтобы отделить вопросы от материала, обсуждение данной темы будет проходить в соседней теме: http://vbsupport.org/forum/showthread.php?t=12331

Начну, я пожалуй с .htaccess'а.
Во-первых, самая главная проблема, которая влияет на работу форума - это включённый mod_security.c - именно он является виновником ошибок 403 (access forbidden) при попытке редактирования настроек форума, редактировании профиля и т.д.
Чтобы его отключить, в .htaccess необходимо добавить сл. запись:
Code:
<IfModule mod_security.c>
    SecFilterEngine Off
    SecFilterScanPOST Off
</IfModule>
.htaccess: ЧаВо
Авторы Web-сервера Apache реализовали допустимость децентрализованного управления конфигурацией с помощью использования специальных файлов, которые помещаются на диске прямо в веб-пространстве виртуального сервера. Эти файлы обычно называются .htaccess (обратите внимание на первый символ в названии файла - точку).

Действие команд из файла .htaccess распространяется и на подкаталоги того каталога, в котором этот файл размещен. Файл .htaccess перечитывается при каждом обращении к веб-серверу, так что изменения, внесённые в этот файл, вступают в силу немедленно.

Синтаксис файлов .htaccess в общем случае аналогичен синтаксису главного файла конфигурации. Однако, администратор может ограничивать для пользователей доступ к тем или иным директивам. То есть, несмотря на то, что команда, в принципе, может исполняться из .htaccess, администратор может запретить доступ к конкретной директиве. Учитывайте это при работе.

DirectoryIndex - переопределение файла по умолчанию
Обычно принято файл, который открывается веб-сервером при обращении к каталогу, называть именем index.htm или index.html. Иногда возникает необходимость дать такому файлу другое имя. То есть, сделать так, чтобы при обращении к каталогу открывался не index.html, а, например, файл 123.php или /cgi-bin/index.pl. Для этого добавим в файл .htaccess такую строку:
Code:
DirectoryIndex 123.php /cgi-bin/index.pl
При обращении к каталогу Apache попытается найти один из указанных файлов и показать посетителю его содержимое, а если сделать этого не получится, сервер выдаст пользователю список файлов в каталоге.

Options - Indexes - запрет выдачи листинга пустого каталога
Иногда нужно сделать так, чтобы в случае отсутствия в каталоге файла, который показывается по умолчанию, листинг, то есть список файлов в каталоге, не выдавался. В этом случае можно попробовать добавить в .htaccess такую строчку:
Code:
Options -Indexes
В этом случае вместо списка файлов в каталоге посетитель получит HTTP ошибку 403 - access forbidden. Это ошибку можно обработать и показать пользователю какую-нибудь красивую страничку вместо неинформативного сообщения от веб-сервера.

ErrorDocument - обработка ошибок
Иногда в работе сервера возникают ошибки. Здесь речь идет не о сбоях в работе программного обеспечения, а об ошибках в терминах интернет-стандарта на протокол HTTP - RFC2616. Вообще, в RFC ошибки называются "Status Codes", но мы их будем называть именно ошибками - так привычнее.

Теория такова: клиент присылает на сервер HTTP-запрос, сервер выполняет какие-то операции и возвращает клиенту код возврата и некоторые данные, текстовые или двоичные - вот что происходит каждый раз, когда Вы с помощью своего браузера обращаетесь к любому веб-серверу.

Код возврата - это трехзначное число, на основании которого можно судить о том, насколько успешно был обработан запрос. Так, например, коды возврата, начинающиеся с цифр 1, 2 или 3, являются положительными. А вот если веб-сервер вернул Вам код, начинающийся на 4 или 5, то явно произошла какая-то ошибка. Код 4xx выдается в случае возникновения ошибки в процессе обработки запроса, а 5xx означает критическую ошибку или то, что запрос не может быть выполнен вообще. Вот список ошибок 4xx и 5xx:
  • 400 - Bad Request
  • 401 - Unauthorized
  • 402 - Payment Required
  • 403 - Forbidden
  • 404 - Not Found
  • 405 - Method Not Allowed
  • 406 - Not Acceptable
  • 407 - Proxy Authentication Required
  • 408 - Request Time-out
  • 409 - Conflict
  • 410 - Gone
  • 411 - Length Required
  • 412 - Precondition Failed
  • 413 - Request Entity Too Large
  • 414 - Request-URI Too Large
  • 415 - Unsupported Media Type
  • 500 - Internal Server Error
  • 501 - Not Implemented
  • 502 - Bad Gateway
  • 503 - Service Unavailable
  • 504 - Gateway Time-out
  • 505 - HTTP Version not supported

Детальное описание каждого кода можно найти в RFC2616.

При возникновении ошибки 4xx или 5xx посетитель Вашего сайта увидит в браузере сообщение от сервера, которое вряд ли можно назвать предельно понятным рядовому пользователю. Apache предоставляет возможность выдать вместо аскетичного технического текста, не изобилующего деталями, свою страницу, где Вы можете человеческим языком объяснить пользователю, что произошло и что делать.

Рассмотрим примеры. Допустим, пользователь обратился к документу, которого не существует на сервере. Такое может произойти по разным причинам: где-то осталась ссылка на уже удаленный Вами документ, кто-то дал пользователю неправильную ссылку или пользователь допустил ошибку, когда набирал адрес страницы в браузере. В этом случае сервер выдаст ошибку 404 (Not Found) и текст вида "The requested URL такой-то was not found on this server". Можно выдать вместо этой строчки документ в дизайне Вашего сервера, в котором написать что-то типа "Произошла ошибка - запрошенный документ не найден. Попробуйте уточнить адрес, воспользоваться поисковой системой или начать просмотр сайта с первой страницы". Такое сообщение пользователь поймет гораздо лучше. Более того, пожалуй, выдача дружественных, понятных любому посетителю сообщений является хорошим тоном.

Итак, создаем документ, который будем показывать пользователю в случае возникновения ошибки 404. Назовем файл missing.html, напишем туда все те добрые слова, которыми мы хотим успокоить пользователя, и поместим этот файл в веб-пространство. Допустим, это файл будет доступен как http://Ваш_Сервер/missing.html. В файл .htaccess помещаем такую строчку
Code:
ErrorDocument 404 /missing.html
Теперь при возникновении ошибки 404 пользователь увидит именно Ваш файл. Еще можно скриптом или с помощью SSI вставить в выдаваемый документ какую-нибудь служебную информацию, которую пользователь должен будет привести, если решит обратиться за комментариями к Вам по e-mail. Таким образом можно обработать практически все негативные коды возврата. Конечно, можно обработать и позитивные коды, но смысл этого не до конца ясен, равно как непонятно в какой ситуации это может пригодиться.

Стоит упомянуть об одной особенности браузера MS Internet Explorer версии 5. Если файл missing.html (так мы его назвали в нашем случае) будет иметь размер менее 1Кб, IE5 покажет пользователю не missing.html, а свое собственное сообщение об ошибке 404.

AddType - переопределение типов данных и кодировок
У многих пользователей интернет, когда они начинают чуть глубже изучать технологии, возникает вопрос типа: "А как браузер узнает, какие документы надо показывать как html, какие как текст и как сделать так, чтобы определенные документы браузер не показывал сразу, а выдавал меню, позволяющее сохранить файл на диск?".

Для этого применяются так называемые MIME types. Каждому типу данных, которые обрабатываются веб-сервером, можно задать определенный тип. Этот тип описывается набором символов, отражающим тип используемых данных. Вот, например, таблица типов нескольких наиболее часто используемых видов данных:

Описание данных | Расширение файлов | MIME type
Картинки gif | gif | image/gif
Картинки jpeg | jpeg jpg jpe | image/jpeg
VRML-файлы | wrl vrml | model/vrml
HTML-документ | html htm | text/html
Обычный текст | asc txt | text/plain
Архив ZIP | zip | application/zip
Файл MS Word | doc | application/msword
Файл MS Excel | xls | application/vnd.ms-excel
Файл MS Power Point | ppt | application/vnd.ms-powerpoint
Файл Adobe Acrobat | pdf | application/pdf
Flash-документ | swf | application/x-shockwave-flash

Работает это так: веб-сервер знает, что, например, файлам с расширением .html соответствует тип text/html. В ответ на пришедший запрос html-файла сервер среди прочих http-заголовков возвращает поле Content-type, в котором и указывается тип данных для текущего документа. Пример:
Code:
# telnet user.kursknet.ru 80
Connected to kursknet.ru.
HEAD /index.html HTTP/1.1
Host: user.kursknet.ru
HTTP/1.1 200 OK
Date: Wed, 18 Jul 2001 14:51:10 GMT
Last-Modified: Mon, 02 Jul 2001 07:41:37 GMT
Connection: close
Content-Type: text/html
Браузер, получив такой заголовок, знает, что документ с типом данных text/html это не что иное, как обычная веб-страница на языке HTML. Зная это, браузер обрабатывает принятый документ как HTML и показывает его пользователю именно с учетом этого. А вот если бы тип данных был, например, application/zip, браузер понял бы, что это ZIP-архив, который пользователю нужно предложить сохранить на диск.

То есть, браузеры имеют представление о том, каким образом нужно обрабатывать конкретные типы данных. Естественно, набор типов данных, известный браузерам, ограничен. Обусловлено это тем, что со временем появляются все новые и новые приложения для интернета, которые зачастую работают с новыми типами данных, которых раньше просто не существовало. Например, еще лет пять назад не было типа audio/mpeg, которому соответствуют музыкальные файлы в формате mp3. Появился новый тип и в более поздних версиях браузеров он по умолчанию известен. Кстати, добавить новый тип в браузер можно и вручную.

Хорошо, с выдачей типов и обработкой их браузерами мы разобрались. А теперь появился вопрос: как сказать серверу о том, что нужно выдавать такой тип данных, который он в данный момент не знает? Ведь хоть Apache по умолчанию и хранит описания более чем трехсот типов данных, но ведь появляются все новые и новые! Или вот еще задачка: как сделать так, чтобы файлы с расширением .ext показывались в браузерах посетителей как HTML-документы? Для этого и существует директива AddType, которую Вы можете использовать в файлах .htaccess. Допустим, Вы хотите, чтобы файлам с расширением .ext соответствовал тип данных text/html. Для этого добавим в .htaccess такую строчку:
Code:
AddType "text/html" .ext
После того, как это будет сделано, Apache будет работать с той функциональностью, которой мы добивались. Существует некий набор типов данных, который описывает большинство используемых в интернете форматов. Получить его можно на странице
Code:
ftp://ftp.isi.edu/in-notes/iana/assignments/media-types
Еще одна очень важная и востребованная возможность реализуема с использованием AddType. Речь идет о явном указании кодировки для, например, HTML-документов. Допустим, все страницы Вашего сервера выполнены в кодировке windows-1251, все хорошо, все работает. Однако, вдруг понадобилось сделать подраздел сервера например на финском языке. Вы создали у себя на компьютере соответствующие страницы, текст которых написан по-фински, загрузили на сервер в специальный каталог (например, http://www.Ваш_сервер.ru/fin) и, казалось бы, все сделано, но буквы национального алфавита показываются браузером неверно.

В таких случаях нужно явно указывать кодировку, в которой выполнены соответствующие страницы. Без этого браузер не поймет как нужно отображать национальные символы, которые находятся в документе. Более того, если для всего сервера выдается кодировка windows-1251, естественно, финские страницы будут выданы браузеру тоже с кодировкой windows-1251 в заголовке, что приведет к стопроцентно неправильному отображению.

Итак, учимся выдавать нужную кодировку. Как уже говорилось, документы на другом языке лежат у нас в подкаталоге /fin. Заходим в него, создаем там файл .htaccess и добавляем туда строчку:
Code:
AddType "text/html; charset=iso-8859-1" .html
В результате для всех файлов с расширением .html в каталоге /fin будет выдаваться такой http-заголовок:
Code:
telnet kursknet.ru 80
Connected to kursknet.ru.
HEAD /fin/test.html HTTP/1.1
Host: kursknet.ru
HTTP/1.1 200 OK
Last-Modified: Wed, 18 Jul 2001 16:29:30 GMT
Connection: close
Content-Type: text/html; charset=iso-8859-1
Кодировку iso-8859-1 в данном случае мы использовали потому что финский язык это именно iso-8859-1. Это общий набор символов для большинства западноевропейских языков. Узнайте какой charset должен выдаваться для нужного Вам языка и воспользуйтесь AddType.

Auth - защита паролем
Еще можно использовать .htaccess для установки пароля на доступ к определенным страницам или разделам Вашего сайта. Делается это путем создания в нужном подкаталоге файла .htaccess, в который пишем следующее:
Code:
AuthType Basic
AuthName "this is a test of protected realm"
AuthUserFile /path/to/file/with/passwords
<Limit GET POST>
require valid-user
</Limit>
Кроме того, нужно создать файл с паролями, путь к которому указывается в качестве параметра к директиве AuthUserFile. Пароли в этом файле должны быть шифрованными, чего можно достигнуть с помощью программы htpasswd, входящей в поставку Apache.

htpasswd [-cmdps] passwordfile username
htpasswd -b[cmdps] passwordfile username password


-c Create a new file. Здесь мы не будем рассматривать все параметры этой команды, но Вы можете сами прочитать подробности запустив htpasswd или ознакомившись с соответствующей страницей документации по Apache.

Сейчас попробуйте обратиться к тому каталогу, в котором мы размещали .htaccess - браузер спросит у Вас пароль. Пока не будет введен правильный логин и пароль, посетитель не увидит соответствующей страницы.

В качестве параметра к директиве require мы указали valid-user. Это означает, что любой пользователь, который есть в используемом файле с паролями, может иметь доступ к защищенному ресурсу. Однако, согласитесь, удобно иметь все пароли в одном файле, а права на конкретные ресурсы давать только определенным пользователям. Это тоже реализуемо. Например, мы хотим дать доступ только пользователю test2. Делаем так:
Code:
require user test2
Еще можно объединить пользователей в группы и давать доступ не конкретным логинам, а группам. Это можно сделать с помощью директивы AuthGroupFile:
Code:
AuthGroupFile /path/to/file/with/groups
В файле /path/to/file/with/groups создаем группы примерно так:
Code:
group1: test1 test5
group2: test2 test4
group3: test1 test3
Соответственно, директиву require будем использовать так:
Code:
require group group3
Механизмы ограничения доступа, которые реализованы в Apache, позволяют очень гибко управлять правами для пользователей и групп, что является очень важной возможностью.

Order, Allow, Deny - запрет доступа для определенных посетителей
Признайтесь, ведь наверняка хоть один раз у Вас было желание запретить кому-то заходить на Ваш веб-сервер? И это тоже можно сделать с помощью .htaccess:
Code:
<Limit GET>
Order Allow,Deny
Deny from 192.168.2.1
Allow from All
</Limit>
Мы запретили пользователю с IP адресом 192.168.2.1 смотреть Ваш сайт. Если вместо 192.168.2.1 написать 192.168.2, то доступ будет запрещен для всей сети класса C 192.168.2.0/24.

Полезные ссылки по теме:
 
Bot
Yandex Bot Yandex Bot is online now
 
Join Date: 05.05.2005
Реклама на форуме А что у нас тут интересного? =)
Old  
VipeR
Private Person
Developer
 
VipeR's Avatar
Post Robots.txt 12

Автор: Владимир Чернышов aka Cherny



Как известно, файл robots.txt используется для запрета индексации части или всего сайта всевозможными роботами. Правильное составление этого файла позволит избежать индексации документов, для индексации не предназначенных.

Формат файла robots.txt

robots.txt — простой текстовый файл1, который должен находиться в корневой директории сервера. Имя файла должно быть в нижнем регистре (robots.txt, Robots.txt — неправильно).

В файле содержатся записи, отделяемые одной или несколькими пустыми строками (разделяемыми CR, CRNL, NL или r, rn, n). Каждая запись, в свою очередь, состоит из строк следующего вида:

имя_поля[необязательные пробелы]:[необязательные пробелы]значение[необязательные пробелы]

Поле является нечувствительным к регистру (case insensitive).

Каждая запись начинается одной или несколькими строками, где имя_поля=User-agent, после чего следует одна или несколько строк, где имя_поля=Disallow, имена полей, которые отличаются от двух указанных, игнорируются2.

Знак «#» означает, что пробелы перед ним и все символы до конца строки являются комментарием. Строки, содержащие только комментарий, игнорируются и не могут использоваться для разделения записей.

User-agent
  • Значением этого поля является имя робота, к которому применяются правила доступа;
  • Если строк с User-agent несколько, то для всех роботов применяются одинаковые правила, которые содержаться в текущей записи;
  • Если значение поля равно «*», то правила применяются к любому роботу, для которого нет отдельной записи. В файле robots.txt может быть только одна запись с User-agent: *.

Disallow
  • В записи должно быть хотя бы одно поле Disallow;
  • в поле Disallow указывается частичный или полный путь (URL), который не будет посещен;
  • пустое значение (Disallow: ) интерпретируется как разрешение на посещение любой страницы;
  • регулярные выражения и символы подстановки запрещены3.

Практика
В процессе обработки сайта роботы имеют массив ссылок для посещения и набор правил исключения из файла robots.txt. Для каждой ссылки выделяется путь (http://www.site.com/path/to/file.html), после чего к этому пути применяются по очереди правила исключения. Пусть в файле есть строка Disallow: /path/to, она сравнивается с соответствующей подстрокой ссылки:
Code:
http://www.site.com/path/to/file1.html — посещение запрещено;
http://www.site.com/path/to/file2.html — посещение запрещено;
http://www.site.com/path/file3.html — посещение разрешено.
Чтобы запретить роботу посещение динамических страниц, можно использовать частичный путь. Например, чтобы запретить посещение страниц для печати вида http://www.site.com/index.php?action=print&id=1, но разрешить посещение страниц вида http://www.site.com/index.php?action=view&id=1, необходимо в robots.txt написать следующее:
Code:
Disallow: /index.php?action=print
Однако следует учитывать порядок параметров в ссылке. Так, следующие страницы робот посетит: http://www.site.com/index.php?id=1&action=print http://www.site.com/?action=print&id=1

Пример файла robots.txt
Code:
User-agent: *
Disallow: /news
# запретить всем роботам индексировать ссылки,
#которые начинаются с /news
Code:
User-agent: StackRambler
User-agent: Aport
Disallow: /eng
Disallow: /news
#Рамблеру и Апорту запретить индексацию ссылок,
#которые начинаются с /news и /eng
Code:
User-agent: Yandex
Disallow:
#Яндексу разрешить все.
Следует заметить, что файл robots.txt не является панацеей, так как его правила исключения используют только «культурные» роботы, а наряду с ними существует целый список роботов, сервисов и программ, которые не следуют правилам исключения, либо игнорируют существование файла robots.txt на сайте.

Кроме этого в файл исключений не стоит добавлять пути к файлам, о существовании которых не следует знать посторонним людям. Файл robots.txt доступен всем, поэтому присутствие там строк, вроде
Code:
Disallow: /admin
, только подзадорит некоторых посетителей к совершению вредоносных действий.

Примечания
  1. В некоторых случаях используется динамическое формирование файла robots.txt, для сайтов с зеркалами.
  2. Некоторые системы поддерживают дополнительные поля. Яндекс, например, использует поле Host для определения основного зеркала сайта.
  3. Некоторые системы разрешают использование регулярных выражений. Так Гугл, который имеет поиск по изображениям, файлам PDF и другим, поддерживает в поле Disallow символы «*» (любая последовательность символов) и «$» (окончание строки ссылки). Это позволяет запретить индексирование определенного типа файлов:
Code:
User-agent: Googlebot
Disallow: *.pdf$
#Запрет индексации файлов PDF
По мнению автора это избыточное расширение, так как с тем же успехом можно вынести все документы PDF в отдельный каталог и запретить его индексирование:
Code:
User-agent: *
Disallow: /pdf/
 
 

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off




All times are GMT +4. The time now is 09:05 AM.


Powered by vBulletin® Version 3.7.6
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd.