我有一個簡單的文件,以返回當前服務器時間,這是我的代碼日期時間返回HTTPS錯誤值和正確的值在HTTP
<?php
$now = new DateTime(null, new DateTimeZone('Asia/Kolkata'));
echo $now->format("M j, Y H:i:s O")."\n";
?>
當我通過HTTP其顯示在右側打開的文件但是當我用https打開時,時間從幾秒到幾乎30分鐘。
起初,我認爲這是一個緩存問題,但即使我禁用緩存這是持久的。
編輯
的時間稱爲這個腳本是在主PHP文件
<script type="text/javascript">
function serverTime() {
var time = null;
$.ajax({url: 'https://url/timeset.php',
async: false, dataType: 'text',
success: function(text) {
time = new Date(text);
}, error: function(http, message, exc) {
time = new Date();
}});
return time;
}
</script>
如果腳本調用的日期時間其返回日期時間當PHP文件後打開在瀏覽器。因此,如果有人打開腳本所在的頁面,那麼上面的代碼返回的日期時間是錯誤的,並且當該頁面刷新時,返回的日期時間不會改變,仍然返回不正確的即舊的日期時間。
有什麼辦法可以讓我每隔一秒鐘刷新php? 由於它只有一個小文件,只有日期時間它shoudnt使用很多資源...
我剛剛在我的服務器上測試了上述代碼。它同時返回HTTP和HTTPS。我認爲這是唯一的,就是緩存。你是否確定*所有緩存確實關閉? –
如果使用'date_default_timezone_set('Asia/Kolkata'),會發生什麼? echo date(「M j,YH:i:s O);'? – MonkeyZeus
這個應用程序是否部署到Web服務器中的多個服務器上?如果是這樣,也許你只是碰到一個不同的服務器,它的時鐘設置錯誤 –