Форум программистов, компьютерный форум, киберфорум
Apache, htaccess
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
 Аватар для zhibirc
651 / 236 / 77
Регистрация: 18.02.2013
Сообщений: 784

Уязвимости, ошибки или просто недостатки в .htaccess

15.03.2014, 02:54. Показов 2524. Ответов 6

Студворк — интернет-сервис помощи студентам
Есть следующий файл. Покритикуйте пожалуйста его аргументированно - какие проблемы лично вы в нем видите и почему.
В том числе хотел бы услышать по поводу порядка следования директив - правилен ли этот порядок в приведенном файле?
Спасибо.
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
##
# Block access to particular file types
<FilesMatch "\.(htaccess|htpasswd|jpg|jpeg|png|gif|log)$">
Order Allow,Deny
Deny from all
</FilesMatch>
##
 
##
# Handle wrong requests
ErrorDocument 403 /errors/403.html
ErrorDocument 404 /errors/404.html
ErrorDocument 500 /errors/500.html
##
 
##
# Manage show directory listings
DirectoryIndex index.html
Options All -Indexes
##
 
##
# Permanently redirect from www domain to non-www domain
RewriteEngine on
Options +FollowSymLinks
RewriteCond %{HTTP_HOST} ^www\.domain\.tld$ [NC]
RewriteRule ^(.*)$ http://domain.tld/$1 [R=301,L]
##
 
##
# Restrict access to the site with .htpasswd
#AuthUserFile /server/path/of/.htpasswd
#AuthType Basic
#AuthName "The Title of the Protected Page Goes Here"
 
#<Files "login.php">
#Require ValidUser
#</Files>
##
 
##
# Caching files
<FilesMatch "\.(gif|jpg|jpeg|png|ico|js|css)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>
##
 
##
# Maximum size of POST data
#php_value post_max_size 1M
##
 
##
# Disable PHP-scripts
#php_flag engine  off
##
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.03.2014, 02:54
Ответы с готовыми решениями:

Есть ли ошибки или уязвимости?
добрый день уважаемые программисты доработал скрипт вроде ошибок не обнаружил, подскажите есть ли ошибки на ваш взгляд? или уязвимости? ...

Htaccess и get, просто, но не ясно
RewriteRule ^blog/(+)/? template/Default/blog.php?heading=$1 Открывает http://site.ru/blog/1/ получается с heading=1 Как сделать чтобы...

COBOL - умирает или нет? Его преимущества и недостатки
Всем привет. Решил создать эту тему, т.к. существует довольно популярное мнение (особенно среди людей занимающихся современными языками...

6
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
15.03.2014, 07:43
Цитата Сообщение от !i Посмотреть сообщение
Options All -Indexes
Либо все с плюсами/минусами, либо все без них.

Apache/2.2: http://httpd.apache.org/docs/2... ml#options
Warning

Mixing Options with a + or - with those without is not valid syntax, and is likely to cause unexpected results.
Apache/2.4: http://httpd.apache.org/docs/2... ml#options
Note

Mixing Options with a + or - with those without is not valid syntax, and will be rejected during server startup by the syntax check with an abort.
Должно быть, в .htaccess это приведет к 500 ошибке.

Вы точно уверены, что All? Т.е. и ExecCGI, и Includes (SSI).
Цитата Сообщение от !i Посмотреть сообщение
Options All -Indexes
...
Options +FollowSymLinks
А почему не вкл-/отключать всё сразу в одном месте?
1
2 / 2 / 0
Регистрация: 27.08.2013
Сообщений: 5
15.03.2014, 07:52
а так вроде всё ок
1
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
15.03.2014, 08:15
Цитата Сообщение от !i Посмотреть сообщение
<FilesMatch "\.(htaccess|htpasswd|jpg|jpeg|png|gif|log)$">
Order Allow,Deny
Deny from all

</FilesMatch>
...
<FilesMatch "\.(gif|jpg|jpeg|png|ico|js|css)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>
Что-то пошло не так. Статус 403 кешировать собрались?
1
 Аватар для zhibirc
651 / 236 / 77
Регистрация: 18.02.2013
Сообщений: 784
17.03.2014, 22:41  [ТС]
Цитата Сообщение от Vovan-VE Посмотреть сообщение
Что-то пошло не так. Статус 403 кешировать собрались?
Если я правильно понял ваше замечание, то стоит поменять порядок инструкций?
Не очень понятно, что неправильного в:
Code
1
Options All -Indexes
Прошел по ссылке, но почему-то сложилось мнение, что данного конкретного случая приведенное предостережение не касается. Объясните, если не трудно, вашу мысль. К слову, не раз использовал эту директиву, задачу запрещения выдачи листинга директории она выполняет.

Тут же хотел спросить по поводу включения сжатия deflate - всегда ли оно доступно и если нет, то после него следует указать блок инструкций по Gzip-сжатию а там уже сервер сам разберется?
И что вы думаете по поводу замены FollowSymLinks на SymLinksIfOwnerMatch (в директиве Options +FollowSymLinks), усиливает ли это безопасность?

И вот что вышло:

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
##
# Compress common text-based content types and set the compression level (1-9)
DeflateCompressionLevel 9
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript
##
 
##
# Caching files
<FilesMatch "\.(gif|jpg|jpeg|png|ico|js|css)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>
##
 
##
# Block access to particular file types
<FilesMatch "\.(htaccess|htpasswd|jpg|jpeg|png|gif|log)$">
Order Allow,Deny
Deny from all
</FilesMatch>
##
 
##
# Handle wrong requests
ErrorDocument 403 /errors/403.html
ErrorDocument 404 /errors/404.html
ErrorDocument 500 /errors/500.html
##
 
##
# Manage show directory listings
DirectoryIndex index.html
Options All -Indexes
##
 
##
# Permanently redirect from www domain to non-www domain
RewriteEngine on
Options +SymLinksIfOwnerMatch
RewriteCond %{HTTP_HOST} ^www\.domain\.tld$ [NC]
RewriteRule ^(.*)$ http://domain.tld/$1 [R=301,L]
##
 
##
# Restrict access to the site with .htpasswd
#AuthUserFile /server/path/of/.htpasswd
#AuthType Basic
#AuthName "The Title of the Protected Page Goes Here"
 
#<Files "login.php">
#Require ValidUser
#</Files>
##
 
##
# Maximum size of POST data
#php_value post_max_size 1M
##
 
##
# Disable PHP-scripts
#php_flag engine  off
##
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
18.03.2014, 14:50
Лучший ответ Сообщение было отмечено zhibirc как решение

Решение

Цитата Сообщение от Vovan-VE Посмотреть сообщение
Что-то пошло не так. Статус 403 кешировать собрались?
Цитата Сообщение от !i Посмотреть сообщение
Если я правильно понял ваше замечание, то стоит поменять порядок инструкций?
На первый взгляд кажется странным, что картинки попали под запрет в Deny from all. Ну да ладно, допустим, это действительно было необходимо. Но вторая штука с хидером явно противоречит первому по меньшей мере по логике вещей. А что именно тут лишнее — первое или второе — я понятия не имею.
Цитата Сообщение от !i Посмотреть сообщение
Не очень понятно, что неправильного в: Options All -Indexes
Опции указываются либо "абсолютно": только то, сё, это и это, и больше ничего (все без плюсов и монусов), либо "относительно": добавить то, се и убрать то и это (все в плюсами или минусами). Смешивание опций с плюс/минусами и опций без плюс/минусов не предусмотрено. В версии 2.2 это приводит к неопределенному поведению (например, землетрясение на Сатурне), а в 2.4 это уже невалидный конфиг.
Цитата Сообщение от !i Посмотреть сообщение
Тут же хотел спросить по поводу включения сжатия deflate - всегда ли оно доступно и если нет, то после него следует указать блок инструкций по Gzip-сжатию а там уже сервер сам разберется?
Вроде как, это отдельный модуль. http://httpd.apache.org/docs/2... flate.html
Есть секция <IfModule>.
Цитата Сообщение от !i Посмотреть сообщение
И что вы думаете по поводу замены FollowSymLinks на SymLinksIfOwnerMatch (в директиве Options +FollowSymLinks), усиливает ли это безопасность?
Если вот так в лоб, то да, это сокращает свободу действий, включая нежелательные действия.
1
 Аватар для zhibirc
651 / 236 / 77
Регистрация: 18.02.2013
Сообщений: 784
19.03.2014, 12:24  [ТС]
Цитата Сообщение от Vovan-VE Посмотреть сообщение
Если вот так в лоб, то да, это сокращает свободу действий, включая нежелательные действия.
Кстати, вроде как это изменение еще и способно "излечить" Internal Server Error - 500-ю ошибку, во всяком случае так мне сказал один хостер.

И еще один вопрос. Есть ли принципиальное различие в способе указание основания для сжатия DEFLATE - расширения файла или его MIME-типа:
1)
Code
1
2
3
4
5
<ifModule mod_deflate.c>
    <filesMatch "\.(js|css|html|php|xml)$">
        SetOutputFilter DEFLATE
    </filesMatch>
</ifModule>
2)
Code
1
2
3
4
5
6
7
8
9
10
11
<ifModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
</ifModule>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.03.2014, 12:24
Помогаю со студенческими работами здесь

.htaccess и ошибки
Есть файл index.php и файл .htaccess в корневой директории. .htaccess имеет следующие содержимое: DirectoryIndex index.php ...

Стоит ли делать сайт на стандартном шаблоне или в нем какие либо недостатки?
Добрый день, уважаемые читатели форума! Устроился на работу в образовательное учреждение и сразу поставили задачу сделать сайт. Выбрал CMS...

Ошибки в RAD Studio (просто жесть)
Установил XE8 - всё было ок. Вскоре удалил, чтобы установить 10.1 Berlin. И тут начались проблемы. При запуске bds стала возникать ошибка...

.htaccess и редирект - подскажите, есть ли ошибки
Проводятся работы по оптимизации сайта, но позиции стартовые плачевны - 500-900. Запросы в основном сч, даже после некоторых принятых мер...

Настройка ошибки 404 через .htaccess
Всем привет, подскажите пожалуйста как в .htaccess фаил 404.HTML заменить на 404.PHP. Если вписать в .htaccess ErrorDocument 404...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru