помогите отладить страницу php - PullRequest
0 голосов
/ 30 марта 2011
<?php
error_reporting(E_ALL);
// Getting the information 
$ipaddress = $_SERVER['REMOTE_ADDR']; 
$page = "http://{$_SERVER['HTTP_HOST']}{$_SERVER['PHP_SELF']}";
if(!empty($_SERVER['QUERY_STRING']) $page .= $_SERVER['QUERY_STRING'];
$referrer = $_SERVER['HTTP_REFERER'];
$datetime = mktime(); 
$useragent = $_SERVER['HTTP_USER_AGENT'];
$remotehost = getHostByAddr($ipaddress);

// Create log line
$logline = $ipaddress . '|' . $referrer . '|' . $datetime . '|' . $useragent . '|' . $remotehost . '|' . $page . "\n"; 
echo $logline;
// Write to log file: 
//$logfile = 'logfile.txt';
$logfile = '/home/www/agro-dive.onlinewebshop.net/logfile.txt';

// Open the log file in "Append" mode 
if (!$handle = fopen($logfile, 'a+')) {
    die("Failed to open log file"); 
} 

// Write $logline to our logfile. 
if (fwrite($handle, $logline) == FALSE) {
    die("Failed to write to log file"); 
} 

fclose($handle);  

?>

Если я попытаюсь открыть этот php, он выдаст мне ошибку сервера

HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfill the request.

, и я также проверил его, следуйте инструкциям здесь , но это не такпроизвести любое сообщение журнала

Ответы [ 3 ]

1 голос
/ 30 марта 2011

«ошибка сервера» означает «вы должны заглянуть в журнал error_log серверов для получения конкретного сообщения об ошибке» .

Отладка означает чтение сообщений об ошибках, не просмотр кода и не угадывание.

0 голосов
/ 13 июля 2012
// Write to log file: 
//$logfile = 'logfile.txt';
$logfile = 'log.log';

где log.log - ваш файл журнала

0 голосов
/ 30 марта 2011

Я не могу ответить на ваш вопрос об отладке и ведении журнала, но за то, что это стоит.Ваша ошибка в строке 6. Замените ее следующим:

if(!empty($_SERVER['QUERY_STRING']))
    $page .= $_SERVER['QUERY_STRING'];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...