отслеживание аналитики с веб-сайтом php

Недавно я изменил формат своего веб-сайта на php (, а не на html ), т.е. я переименовал все свои HTML-страницы с расширением.php и исправил ссылки с моим файлом.htaccess.

Мне нужно отслеживать мои новые php-страницы с помощью Google Analytics, поэтому я создал отдельный php-файл, содержащий фрагмент javascript Google. Я разместил его в корне моего веб-сайта и связал с ним каждый из моих тегов php с помощью этого кода после тега <body>:

<?php include_once("analyticstracking.php") ?>

Моя проблема в том, что это работает только с моей страницей index.php. Все другие мои страницы не могу найтиanalyticstracking.php(в Dreamweaver пишет, что "analyticstracking.php" отсутствует на локальном диске. Получить")

Если я изменю ссылку (, добавив "/" )к:

<?php include_once("/analyticstracking.php") ?>

то все мои страницы могут найти файл, но Google Analytics не отслеживает мою активность.

Я использую «Аналитику -в реальном времени», чтобы проверить это.

Вот мой адрес www.brp -architects.com. (В настоящее время используется

<?php include_once("/analyticstracking.php") ?>

так как этот код с «/» позволяет всем моим страницам найти мой php-файл кода отслеживания ).

Вся причина, по которой я это делаю, заключается в том, что я могу использовать фрагмент PHP-кода для получения IP-адресов посетителей моего веб-сайта, получая IP-адрес прокси-сервера:

<?
if (getenv(HTTP_X_FORWARDED_FOR)) {
    $ip_address = getenv(HTTP_X_FORWARDED_FOR);
} else {
    $ip_address = getenv(REMOTE_ADDR);
}

?>

Спасибо за ваши ответы!

Вот мой фрагмент отслеживания из файла analyticstracking.php:

<script type="text/javascript">

var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-5434990-2']);
  _gaq.push(['_trackPageview']);
  setTimeout('_gaq.push([\'_trackEvent\', \'NoBounce\', \'Over 30 seconds\'])',30000);

(function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script>

Ссылка на мой код отслеживания находится прямо под открывающим тегом body :

<?php include_once("/analyticstracking.php") ?>
-. 121 ---1918082- Вы знаете простой php-скрипт для выдачи 403 после проверки ip? У меня есть скрипт, в котором платежные системы приходят с подтверждениями оплаты. Чтобы сделать страницу безопасной, так как она может получить доступ к информации о заказе и другим материалам, связанным с пользователем, мне пришлось ограничить доступ по ip (/24 )...

У меня есть скрипт, в котором платежные системы приходят с подтверждениями оплаты. Чтобы сделать страницу безопасной, поскольку она может получить доступ к информации о заказе и другим материалам, связанным с пользователем, мне пришлось ограничить доступ по ip (/24 ), как следует:

$ipAllowed = array(
'192.192.192',
'172.172.172'
);
$ipAllowed = str_replace(".", "\.", implode("|", $ipAllowed));

if(!preg_match("/^($ipAllowed)\.[0-9]{1,3}$/", $_SERVER['REMOTE_ADDR'])){
     header('HTTP/1.0 403 Forbidden');
     die('You are not allowed to access this file.');
}

*ip просто для примера

До того, как я использовал:

if(!in_array(@$_SERVER['REMOTE_ADDR'], array('ips here'))); //only works with full ip

Массив !in _был намного аккуратнее, чем тот, который я использую сейчас, но мне нужно что-то, что работает с /24 ips или даже с обоими!

Знаете ли вы что-то, что работает лучше/быстрее, надежнее и аккуратнее?

@rap -2 -h Как вы сказали, это более аккуратная версия, которая работает с полным ip, /24 или даже /16

$ipAllowed = array( '192.168.1.153' '172.172.172'); 
$allowed = false; 

foreach($ipAllowed as $ip): 
    if(strpos($_SERVER['REMOTE_ADDR'], $ip) === 0) $allowed = true; 
endforeach; 

if (!$allowed) { 
    header('HTTP/1.0 403 Forbidden'); 
    die('You are not allowed to access this file.'); 
}
5
задан hakre 9 September 2013 в 12:40
поделиться