Кто разбирается?
Вопрос номер раз.
В общем просто скрыть файлы (типа news.txt, parol.txt) от глаз получилось строчкой
<Files *.txt>
Deny from all
</Files>
Всё нормально, при попытке зайти conlang.site90.com/news/news.txt (http://conlang.site90.com/news/news.txt) и conlang.site90.com/news/parol.txt (http://conlang.site90.com/news/parol.txt) выходит страница 403.html, при это php скрипт с ними нормально работает.
Хотел так же скрыть файл st.css (http://conlang.site90.com/st.css) (как бы нафиг его смотреть), но в таком случае стили не применяются вообще. В общем-то это не принципиально, но можно ли так сделать, чтобы его скрыть, но он подгружался бы на страницы (он применяется абсолютно на всех страницах).
Вопрос номер два.
Есть страницы, на которые идет редайрект при ошибках, типа ErrorDocument 404 http://www.conlang.site90.com/404.html (потому что сервер в таких случаях перенаправляет на фигню и нафиг с сайта).
Можно ли как-то сделать, чтобы на них специально самостоятельно нельзя было бы зайти по прямой ссылке, перенаправлялось бы на главную? Но при ошибке, выводились бы эти страницы. Хотя, наверное, как это можно определить...
Цитата: Juuurgen от августа 2, 2012, 16:15
Хотел так же скрыть файл st.css (http://conlang.site90.com/st.css) (как бы нафиг его смотреть), но в таком случае стили не применяются вообще. В общем-то это не принципиально, но можно ли так сделать, чтобы его скрыть, но он подгружался бы на страницы (он применяется абсолютно на всех страницах).
Нельзя. Сама идея бредовая: те текстовые файлы, которые ты запретил, не нужно передавать пользователю, их использует скрипт PHP на сервере. Чтобы CSS использовался, его надо передать пользователю, т.к. CSS-стили использует браузер у пользователя.
В любом случае, взломать сайт, зная CSS, невозможно.
Цитата: Juuurgen от августа 2, 2012, 16:15
Есть страницы, на которые идет редайрект при ошибках, типа ErrorDocument 404 http://www.conlang.site90.com/404.html (потому что сервер в таких случаях перенаправляет на фигню и нафиг с сайта).
Можно ли как-то сделать, чтобы на них специально самостоятельно нельзя было бы зайти по прямой ссылке, перенаправлялось бы на главную? Но при ошибке, выводились бы эти страницы. Хотя, наверное, как это можно определить...
А смысл? Кто-то дал тебе ссылку «Посмотри тут XXX», ты переходишь на ссылку — а там не ХХХ, а вообще что-то левое, главная страница левого сайта. Нафиг?
Можно Referer проверять, но там свои подводные камни.
ЦитироватьХотел так же скрыть файл st.css (как бы нафиг его смотреть), но в таком случае стили не применяются вообще. В общем-то это не принципиально, но можно ли так сделать, чтобы его скрыть, но он подгружался бы на страницы (он применяется абсолютно на всех страницах).
php читает txt непосредственно на сервере, в то время как css должен быть доступен клиенту, чтобы сработать. Насколько я понимаю, содержимое css можно сделать недоступным для непосредственной загрузки, сделав его в виде php, проверяющего страницу, с которой была дана ссылка. Впрочем, дешевле обойтись без этого — пользователь может, например, отключить referer logging в своем браузере (либо браузер настолько оптимизирован, что не передает эту информацию при загрузке стилей), и тогда хитрая таблица стилей перестанет грузиться.
Цитата: fujhi от августа 2, 2012, 16:25
В любом случае, взломать сайт, зная CSS, невозможно.
Да дело не во взломе сайта :)
Просто интересно было
Цитата: fujhi от августа 2, 2012, 16:25
А смысл? Кто-то дал тебе ссылку «Посмотри тут XXX», ты переходишь на ссылку — а там не ХХХ, а вообще что-то левое, главная страница левого сайта. Нафиг?
Посмотри страницу 404.html?
нафиг, это же служебная страница
Страницу 404 можно изменить. Все настраивается.
Цитата: Python от августа 2, 2012, 16:49
Страницу 404 можно изменить. Все настраивается.
она изменена.
http://www.conlang.site90.com/404.html
А-а-а, так можно, да. С ходу не скажу, как, потом гляну.
Цитата: fujhi от августа 2, 2012, 16:58
А-а-а, так можно, да. С ходу не скажу, как, потом гляну.
В смысле? Зачем? Я уже ее изменил и поставил редайрект на главную через 5 секунд через meta. А в .htaccess прописал
ErrorDocument 401 http://www.conlang.site90.com/401.html
ErrorDocument 403 http://www.conlang.site90.com/403.html
ErrorDocument 404 http://www.conlang.site90.com/404.html
ErrorDocument 500 http://www.conlang.site90.com/500.html
Вопрос был именно о прямой ссылке.
Есть еще вопрос
ЦитироватьAuthorization Required
This server could not verify that you are authorized to access the document requested. Either you supplied the wrong credentials (e.g., bad password), or your browser doesn't understand how to supply the credentials required.
Это какая ошибка? Я думал, что 401, но почему-то тогда не действует ErrorDocument 401 http://www.conlang.site90.com/401.html
А если так?
ErrorDocument 401 /401.html
ErrorDocument 403 /403.html
ErrorDocument 404 /404.html
ErrorDocument 500 /500.html
А потом запрети прямой доступ к этим файлам. Может помочь.
Цитата: fujhi от августа 2, 2012, 17:23
А потом запрети прямой доступ к этим файлам. Может помочь.
сейчас попробую
Цитата: fujhi от августа 2, 2012, 17:23
А потом запрети прямой доступ к этим файлам. Может помочь.
Стоп, нужно указывать путь от корня сервера или достаточно текущую папку?
Цитата: Juuurgen от августа 2, 2012, 17:31
Цитата: fujhi от августа 2, 2012, 17:23А потом запрети прямой доступ к этим файлам. Может помочь.
Стоп, нужно указывать путь от корня сервера или достаточно текущую папку?
В любом случае не помогло :)
Да и нафиг мне их блокировать. Вообще это какая-то бредовая идея получается
Цитата: Juuurgen от августа 2, 2012, 17:31
Цитата: fujhi от августа 2, 2012, 17:23
А потом запрети прямой доступ к этим файлам. Может помочь.
Стоп, нужно указывать путь от корня сервера или достаточно текущую папку?
Если ты указываешь полный адрес (http://.../), то получается перенаправление, адрес в адресной строке у пользователя меняется. Если ты указываешь местный путь, то, по идее, адрес не должен меняться, т.е. это не перенаправление, а внутренняя подмена содержания на сервере. Следовательно, возможно (?) доступ напрямую можно закрыть.
Все оценили мой пуризм? В оригинале был «полный URL», «редирект», «локальный путь». ;D
Цитата: fujhi от августа 2, 2012, 18:04
Следовательно, возможно (?) доступ напрямую можно закрыть.
не, не получилось
вообще закрывается :)
ЦитироватьВсе оценили мой пуризм? В оригинале был «полный URL»...
адрес - тоже заимствование
Сервер — тоже...