このスレッドは解決済です(未解決に戻す場合はこちら)
<<戻る

PHPバージョンアップ後エラーになります このメッセージに返信する
日時: 2012/11/24(Sat) 01:36
名前: カイン
URL:
いつもこのサイトを参考にさせてもらっています。

今回PHPをバージョンアップしたのですが、それに関連したエラーが出るようになりました。

エラーになるのは『iptables_resolve』でエラーとしては下記のように表示されます。

【エラーメッセージ】
/etc/cron.hourly/iptables_resolve: line 2: ?: そのようなファイルやディレクトリはありません
/etc/cron.hourly/iptables_resolve: line 4: =: command not found
/etc/cron.hourly/iptables_resolve: line 5: syntax error near unexpected token `"$iptablelog_path/utils/db_mysql.php"'
/etc/cron.hourly/iptables_resolve: line 5: `include_once ("$iptablelog_path/utils/db_mysql.php");'

バージョンアップ前にはこのようなエラーは出ていなかったのですが、原因がわかりません。

『iptables_resolve』の内容は下記の通りですが、PHPのコマンドがバージョンアップ後に変更になった物があるのでしょうか。どなたかおわかりになるようでしたら教えてください。

/iptables_resolve:

<?

$iptablelog_path = "/var/www/iptablelog"; # Change this
include_once ("$iptablelog_path/utils/db_mysql.php");

db_connect("localhost","iptablelog","iptablelog_user", "-------"); # Change these db settings


function resolve_host($ip) {
$host = chop(`/usr/bin/host $ip`);
#echo "$ip: $host\n";
if (substr($host,-1,1) <> '.') {
return 0;
}
return (end ( explode (' ', $host)));
}

function resolve_from_query($query) {
$result = db_query($query);

while ($ip = db_nextvalue($result)) {
if ($host = resolve_host($ip)) {
#echo "$ip resolved to $host\n";
$query = "INSERT INTO host_cache SET " .
"ip=inet_aton('$ip'),host='$host',resolved=now()";
db_query($query);
#echo "$query\n";
} else {
$query = "INSERT INTO host_cache SET " .
"ip=inet_aton('$ip'),host='$ip',resolved=NULL";
db_query($query);
#echo "$query\n";
}
}
}

function update_cache($daysold,$limit=1000) {
$query = "SELECT inet_ntoa(ip) FROM host_cache " .
"WHERE resolved IS NULL OR " .
"DATE_ADD(resolved, INTERVAL $daysold DAY) < now() LIMIT $limit";
$result = db_query($query);

while ($ip = db_nextvalue($result)) {
if ($host = resolve_host($ip)) {
$query = "UPDATE host_cache SET host='$host',resolved=now() " .
"WHERE ip=inet_aton('$ip')";
db_query($query);
#echo "$query\n";
}
}
}

$query = "SELECT DISTINCT inet_ntoa(u.ip_saddr) FROM ulog u LEFT JOIN host_cache h ON " .
"h.ip = u.ip_saddr WHERE h.host IS NULL";
resolve_from_query($query);
$query = "SELECT DISTINCT inet_ntoa(u.ip_daddr) FROM ulog u LEFT JOIN host_cache h ON " .
"h.ip = u.ip_daddr WHERE h.host IS NULL";
resolve_from_query($query);

update_cache(60,1000);

db_disconnect();
記事編集 編集

Page: | 1 | 2 | 3 |

Page: | 1 | 2 | 3 |

件名※必須
名前※必須
URL
任意のパスワード (投稿後のコメント修正・削除時に使用)
画像認証※必須 投稿キー(画像で表示されている数字を入力)
コメント※必須

※質問を投稿後に自己解決された場合は、原因と行った対処を具体的に書き込み下さるよう、よろしくお願いします。

- WEB PATIO -