|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
Если в ответе на HEAD запрос, в Content-Type: нет указания charset= значит мы запросили заголовок файла, а не страницы. Запрос со ссылкой на страницу: авторHEAD /index.php?RSongID=2312&Link=2312 HTTP/1.1 Host: www.smallchurchmusic.com Connection: close User-Agent: compatible; MSIE 7.0; Windows NT 6.0 HTTP/1.1 200 OK Date: Mon, 04 Jan 2016 16:42:34 GMT Server: Apache X-Powered-By: PHP/5.3.29 Connection: close Content-Type: text/html; charset=UTF-8Есть charset. Запрос со ссылкой на файл: авторHEAD /Snippet/S-ABabeLies-Corner-PipeLC-48-CAM.mp3 HTTP/1.1 Host: www.smallchurchmusic.com Connection: close User-Agent: compatible; MSIE 7.0; Windows NT 6.0 HTTP/1.1 200 OK Date: Mon, 04 Jan 2016 16:36:53 GMT Server: Apache Last-Modified: Thu, 22 Jul 2010 05:34:13 GMT Accept-Ranges: bytes Content-Length: 181139 Connection: close Content-Type: audio/mpegНет charset'а. Может кто-то знает причину, почему это плохо. Это нормальный способ проверять ссылку? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2016, 19:49 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
Странная постановка вопроса. А что, страница - это не файл что ли? Content-Type: text/html Content-Type: audio/mpeg Вот на это и смотри. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2016, 19:53 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
Я не разбираюсь в вэб-серверах, страница тоже файл конечно, но могу показать пример, когда html-файл в списке прочих файлов на странице. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2016, 20:10 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
А.Smithстраница тоже файл конечнотогда хотелось бы услышать задачу. Пока что она звучит: "как мне отличить файл от файла" ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2016, 20:11 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
И при HEAD запросе со ссылкой на такой html-файл в ответе нет шарсета, т.е. сервер отвечает, что это файл, он не выдаёт этот html как страницу. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2016, 20:13 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
charset - это кодировка. И она может быть не указана даже для html-файла Тебе нужно определиться, чем ДЛЯ ТЕБЯ отличается "файл" от "страницы". ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2016, 20:31 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
Shocker.ProСтранная постановка вопроса. А что, страница - это не файл что ли? Content-Type: text/html Content-Type: audio/mpeg Вот на это и смотри.Зачем? Я планирую качать и txt, и html, и mp3 файлы, не важно какое содержимое, важно что сервер отвечает на HEAD запрос. Shocker.ProА.Smithстраница тоже файл конечнотогда хотелось бы услышать задачу. Пока что она звучит: "как мне отличить файл от файла"Какую задачу? Кто здесь будет выполнять задачу за меня? Не нужно придумывать. Начиная с названия темы был прямой вопрос. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2016, 20:35 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
Shocker.Procharset - это кодировка. И она может быть не указана даже для html-файла Тебе нужно определиться, чем ДЛЯ ТЕБЯ отличается "файл" от "страницы".Да, при чем здесь Я вообще. Может кто-то знает, по какому случаю вэб-сервер не показывает charset для html-файла. В тоже время тотже сервер показывает charset для html-страницы, на которой кстати ссылка на тот первый html-файл. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2016, 20:45 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
А.Smithпо какому случаю вэб-сервер не показывает charset для html-файла.он показывает то, что ему подсунул программист, который создал этот html-файл А.SmithНачиная с названия темы был прямой вопрос.чтобы ответить на этот вопрос, нужно знать, чем отличается ДЛЯ ТЕБЯ "файл" от "страницы". Потому что "страница" - это тоже файл. А.SmithДа, при чем здесь Я вообще.потому что задаешь вопрос ТЫ. Для меня "страница" это тоже файл, но у тебя какое-то другое понимание. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2016, 20:55 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
Думаю, что страница это не обязательно файл на сервере и мне также очевидно, что не каждый html-файл на вэб-сервере выдаётся как страница на HEAD запрос. Я тоже подумал, что charset'а в ответе нет потому, что в html-файле нет, но вот он, в файле указан <meta charset="utf-8">, а сервер отвечает, без шарсета вот так: авторHTTP/1.1 200 OK Server: nginx/1.0.15 Date: Mon, 04 Jan 2016 17:50:13 GMT Content-Type: text/html Content-Length: 82042 Last-Modified: Fri, 20 Nov 2015 10:07:29 GMT Connection: close Accept-Ranges: bytesДа, вопрос я задал, но опять, не потому, что я что-то считаю, мне так сервер отвечает. Вот я и спросил, можно таким способом пользоваться или это не показатель? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2016, 21:04 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
А.Smithhtml-файл на вэб-сервере выдаётся как страницау тебя каша в голове. Непонятно как ответить на твой вопрос, потому что ты в своих вопросах используешь бредовые утверждения. С точки зрения КЛИЕНТА (браузера или твоей программы) пофигу, есть ли физически файл на сервере, или он формируется на лету, или достается из базы данных и т.п. С точки зрения клиента сервер отдает ФАЙЛ. Тип файла указан Content-Type: text/html, Content-Type: audio/mpeg и т.п. Как его будет интерпретировать клиент - это сервер не волнует. Серверу пофиг, рассматривает ли клиент этот файл как "страницу" или как что-то еще. А.Smithможно таким способом пользоваться или это не показатель?КАКИМ способом пользоваться и ДЛЯ ЧЕГО ПОЛЬЗОВАТЬСЯ. Пока заглавный вопрос "Как проверить, ссылка на файл или на страницу?" или вопрос уже другой? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2016, 21:21 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
Shocker.ProА.Smithhtml-файл на вэб-сервере выдаётся как страницау тебя каша в голове. Непонятно как ответить на твой вопрос, потому что ты в своих вопросах используешь бредовые утверждения.Мне точно нечего ответить человеку не отличающему вопрос от утверждения. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2016, 22:20 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
Я ничего не утверждал, моя цель не в этом. Я просто процитировал логи обмена, на которые ориентирую и мой вопрос был, можно ли на это полагаться. Ну, вот я вычитал, что "мультиязыковые" сервера как вики могут не выдать charset'а, а в meta-тэге каждой конкретной странички указывают её charset. Возможно протокол не обязывает сервер категорично указывать charset в заголовке ответа, но ведь поголовно все сервера его выдают при GET запросе страниц. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2016, 22:44 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
А.Smithможно ли на это полагаться.в чём полагаться? задача до сих пор не ясна. Что именно ты хочешь определить по наличию либо отсутствию чарсета? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2016, 23:06 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
В ответе от википедии действительно в заголовке нет charset'а хотя запрос касался странички. авторHTTP/1.1 301 TLS Redirect Server: Varnish Location: https://ru.wikipedia.org/wiki/User_Agent Content-Length: 0 Accept-Ranges: bytes Date: Mon, 04 Jan 2016 19:56:49 GMT X-Varnish: 1214115036 Age: 0 Via: 1.1 varnish Connection: close X-Cache: cp3031 frontend (0) Set-Cookie: WMF-Last-Access=04-Jan-2016;Path=/;HttpOnly;Expires=Fri, 05 Feb 2016 12:00:00 GMT X-Client-IP: 91.215.221.250 Cache-Control: private, s-maxage=0, max-age=0, must-revalidate Set-Cookie: GeoIP=RU:12:Grozny:43.31:45.70:v4; Path=/; Domain=.wikipedia.org Хочу определить, имеет ли смысл скачать и сохранить как файл то, что по ссылке. Но похоже ориентироваться можно только по хвосту ссылки. Если там что-то типа .xxx или .xxxx, то можно качать это в файл, а иначе наверняка скачаю какую нибудь страничку сайта. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2016, 23:28 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
А.Smithимеет ли смысл скачать и сохранить как файл то, что по ссылкеЧто является смыслом для тебя - знаешь только ты и делиться этим с нами не хочешь. Если под хвостом ссылки ты имеешь ввиду расширение - то это было бы неправильно. Контент html может вернуть расширение html, shtml, php, asp, aspx, cgi, в конце-концов расширения может не быть вовсе, при этом все равно вернется страничка html. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2016, 00:13 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
А.SmithВ ответе от википедии действительно в заголовке нет charset'а хотя запрос касался странички.в приведенном ответе редирект на другую страничку: HTTP/1.1 301 TLS Redirect. Тебе стоило бы изучить хотя бы основы обмена по http, в частности коды ответов. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2016, 00:15 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
Я долго втыкал в названные тобой вещи когда самостоятельно пытался написать сетевую часть. Пользуясь асинхронными API посылал GET запросы, контролировал и парсил ответ, искал ссылки. Но поиск по этому форуму навел меня на темы Дмитрия77, а он вполне обосновал пригодность IE. Теперь, прежде чем показать пользователю список ссылок я отфильтровываю ссылки на страницы. Именно так, как я уже указал не смотря на то, что в список попадут и статичные странички сайта. Главное, что туда не попадёт потенциально-многочисленный мусор ссылок на php страницы и т.п. Из этой темы я вынес мысль, что нельзя ориентироваться только на отсутствие charset в заголовке. Возможно я совмещу эту проверку с проверкой расширения, хотя какое там расширение у ссылки. Просто нет смысла содержать приличный потенциально настраиваемый список типов Content-Type. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2016, 00:38 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
А.SmithПросто нет смысла содержать приличный потенциально настраиваемый список типов Content-Type.Почему? Можно ведь оперировать не только белым списком, но и черным. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2016, 00:40 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
Ну разумеется это значительно повысит гибкость настройки, но это и раздувает настройки. Я стараюсь не забывать о целесообразности. Не всё же в угоду исскуству)) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2016, 00:46 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
ну вот смотри - это ссылка на картинку, опубликованную в одной из тем этого форума http://www.sql.ru/forum/actualfile.aspx?id=18590450 ты даже как человек по внешнему виду не сможешь определить, что это ссылка на картинку, а не на "страничку", как ты выражаешься. Тебе поможет именно: Content-Type: image/png; charset=UTF-8 (кстати, заметь, что тут есть чарсет) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2016, 00:53 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
Однако. Т.е. ты советуешь проверять тип контента и отфильтровывать text/html, а если нужны htm(html) выключать фильтр? Кажется это то, что нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2016, 01:12 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
хм. Я посоветовал это в самом первом сообщении. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2016, 01:37 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
И сейчас тот пост выглядит лишь как намёк. А тогда смысл понимался совсем по-другому. Ято считал, что сервер как-то направляет браузер. Это возможно. На другом форуме мне показали, что действительно сервер принуждает браузер скачать, а не отобразить предлагаемый файл. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2016, 01:51 |
|
Как проверить, ссылка на файл или на страницу?
|
|||
---|---|---|---|
#18+
Сервер не может ни к чему принудить браузер. Сервер вообще не знает, кто именно (какой клиент) у него запрашивает файл. Клиент может лишь добровольно сообщить (возможно, неправду) о том, кто он есть. Существуют лишь некие соглашения о поведении клиента и сервера. Но, исходя из того, что топик расположен в форуме Visual Basic, и наличие браузера в процессе обмена не было упомянуто, логично было предположить, что обмен с сервером ведет твоя программа, то есть многие соглашения можно просто проигнорировать. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.01.2016, 02:09 |
|
|
start [/forum/topic.php?fid=60&fpage=25&tid=2155668]: |
0ms |
get settings: |
8ms |
get forum list: |
10ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
70ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
others: | 361ms |
total: | 535ms |
0 / 0 |