Имя: Пароль:
IT
Веб-мастеринг
кэширование текста на сервере
,
0 KKrKKdd
 
13.05.16
17:00
Доброго дня всем!
Подскажите пожалуйста кто разбирается! Копаю целый день - ничего не могу найти...
Сама я недавно начала пробовать разбираться с PHP и проч. Поэтому заранее извиняюсь за глупый вопрос.
Есть PHP на хостинге,  1ска отправляет на него некий текст с помощью HTTP Запроса и заголовков. этот PHP создает папку, добавляет в нее файлы и в частности тхт с этим вот текстом и index.html, который при открытии загружает в себя данные из тхт и отображает их. эта часть проходит гладко. в 1с меняются данные. новые данные отправляются в этот же php и он перезаписывает текст который лежит все в той же папке. раз на раз не приходится, но в некоторый момент после того как текст был переписан, index page отображает актуальный новый текст, а вот сам файл txt при открытии через си панель или же при получении http запросом из 1с содержит в себе старые данные. т.е. index подгружает актуальный текст, а вот сам текст к которому он обращается устарел. если ничего не трогать через несколько минут он обновляется. но как получить актуальный файл, по типу того что делает index? а он всего то запускает php get который считывает строки этого текста. почему кэшируется этот текстовый документ? я прочитала как убрать кэширование с html страниц и с php, но что делать с текстом?
Народ, подскажите пожалуйста!!!!
1 Fragster
 
гуру
13.05.16
17:05
надо написать в техподдержку хостинга про неправильную настройку веб сервера
2 f_vadim
 
13.05.16
17:06
3 f_vadim
 
13.05.16
17:08
>>а он всего то запускает php get
а get обрабатывает сервер, апач или что там у вас на хостинге, он и кэширует.
4 KKrKKdd
 
13.05.16
17:16
объясняю я криво, поэтому для ясности попробую предоставить участки кода, выполняющие эти действия.

индекс.хтмл содержит следующее:

function getData(){
   var sc=document.createElement("SCRIPT");
   sc.src="PHPget.php?now="+escape(new Date());
   document.body.appendChild(sc);
};

в свою очередь PHPget.php :
<?php
$fname = "table.txt";
$textTable = file('upload/'.$fname);

for($i = 0; $i < count($textTable ); ++$i) {
$textTableNew = str_replace("\r", "", $textTable [$i]);
echo "MyCallback(\"$textTableNew\");";
}
?>
5 KKrKKdd
 
13.05.16
17:19
в индекс хтмл я получаю этот текст

function MyCallback(val){
  htmlTemp  = htmlTemp  + val;
};

вот тут все хорошо. я получаю актуальный текст. почему же непосредственно просматривая этот текст через си панель я вижу старую версию. почему тогда эта старая версия не идет ко мне в индекс?
6 KKrKKdd
 
13.05.16
17:21
или почему 1ска с помощью http запроса цепляет старую версию а не новую как этот php?
7 KKrKKdd
 
13.05.16
17:23
(2) Да спасибо я это уже видела. или не то или я просто не дотюкала как это применить для моей проблемы
8 Fragster
 
гуру
13.05.16
17:27
(7) тогда (1) поможет
9 Генератор
 
13.05.16
17:31
для получения текста из 1с сделайте отдельный php, и к нему запрос
10 Генератор
 
13.05.16
17:32
+(9) или к тому же php запрос и выдернуть из содержимого
11 KKrKKdd
 
13.05.16
17:35
(10) хорошая свежая идея. сейчас буду пробовать
12 Asmody
 
13.05.16
17:39
(5) Если "си панель" — это CPanel, то оно тоже web-приложение. И его выдача, скорее всего, тоже кешируется.
У всяких текстов, картинок и прочей статики обычно большое время кеширования на стороне сервера. А если еще какой-нибудь CloudFlare перед сервером стоит, то вообще-вообще.
13 Asmody
 
13.05.16
17:40
И про "ближний" кеш тоже забывать нельзя. Какой-нибудь squid на корпоративной проксе.
14 KKrKKdd
 
13.05.16
18:08
(10) спасибо большое тебе, добрый прохожий... целый день не могла до такой очевидности догадаться... как все просто то! (12) я не знаю как проверить все это... я только неделю как влезла, вляпалась так сказать... а ведь с утра я даже не знала что это все кэшируется. искала баг у себя. представляете это ощущение, когда ты смотришь на то что должно совпадать а оно расходится. мой закаленный 1ской мозг пережил такое!!! и все равно спасибо за пищу для размышлений!
15 Генератор
 
13.05.16
18:25
(14)да незачто, пивка выпьешь вечером еще не такие мысли приходят