2008-09-07 15 views
0

Я изучал разные программы веб-статистики для своего сайта, а один из них - Visitors. К сожалению, это C-программа, и я не знаю, как ее вызывать с веб-сервера. Я пробовал использовать PHP shell_exec, но мой веб-хост (NFSN) имеет safe mode PHP, и он дает мне сообщение об ошибке.Звонить посетителям веб-статистика из PHP

Есть ли способ выполнить программу в безопасном режиме? Если нет, может ли он работать с CGI? Если да, то как? (Я никогда раньше не использовал CGI)

+0

> К сожалению, в то время как NFSN действительно обеспечивает доступ SSH, они не дают возможность планировать хрон рабочих мест из-за их «динамичной» сервис. Очень динамично? С этим и включенным безопасным режимом PHP я буду искать новый хост. Есть много хороших без драконовских и бессмысленных ограничений. – ceejayoz 2008-09-07 20:07:46

+0

@ceejayoz Несколько веб-хостов предлагают цены на основе использования. Для небольших сайтов он может сэкономить немалые деньги, если вы знаете, как оптимизировать. Например, я создал веб-сайт для моей бабушки, чтобы продемонстрировать свои работы. Сайт представляет собой набор скриптов PHP, которые взаимодействуют с базой данных SQLite.Сама художественная работа находится на S3 Amazon, а между двумя я плачу менее одного доллара в месяц, чтобы держать его в сети с легкой струйкой трафика. – 2008-09-07 20:22:37

ответ

0

Мне удалось решить эту проблему самостоятельно. Я ставлю следующие строки в файле с именем visitors.cgi:

#!/bin/sh 

printf "Content-type: text/html\n\n" 
exec visitors -A /home/logs/access_log 
1

Посетители выглядят как анализатор журналов и генератор отчетов. Его, вероятно, лучше всего настроить как задачу chron для создания статических HTML-страниц один раз в день или около того.

Если у вас нет доступа к оболочке вашей учетной записи хостинга или какой-либо панели управления, которая позволяет вам настраивать задания хронов, вам не повезет.

0

Есть ли причина не просто использовать Google Analytics? Это бесплатно, и вам не нужно писать это самостоятельно. Я использую его, и он дает вам много информации.

К сожалению, я знаю, что это не «программирование» ответ;)

+0

Конечно - я использую как AWstats, так и Google Analytics, но посетители предоставляют некоторые функции, уникальные для обоих. Я всегда ищу способы извлечь полезные тренды из шума, поэтому чем больше агрегация данных, тем лучше. – 2008-09-07 16:28:31

0

Я второй ответ Ионафана: это анализатор лог, а это означает, что вы должны кормить его в качестве входных данных в лог-файл на веб-сервере и генерирует его обобщение. Учитывая, что вы находитесь на общем хосте, маловероятно, что вы можете получить доступ к этому файлу, и даже если вы захотите его получить, вероятно, что он содержит тогда записи для всех сайтов, размещенных на данной машине (настройка отдельное ведение журнала для каждого VirtualHost, безусловно, возможно с Apache, но я не знаю, является ли это обычной практикой).

Одним из возможных способов решения проблемы является выписать файл журнала со своих страниц. Однако это довольно сложно и может оказать серьезное влияние на производительность (вы должны сериализовать записи в файл журнала для одного, если вы не хотите время от времени мусор). В целом, я бы посоветовал воспользоваться услугами онлайн-аналитики, например Google Analytics.

+0

Как бы у меня получилось, у меня есть доступ к файлу журнала для моего сайта. Я смог сгенерировать HTML-страницу на сервере вручную - я только что искал способ заставить его произойти автоматически. Все, что мне нужно, это выполнить команду оболочки и получить вывод для отображения в качестве страницы. – 2008-09-07 16:38:22

0

Как бы то ни было, у меня есть доступ к файлу журнала для моего сайта. Я смог сгенерировать HTML-страницу на сервере вручную - я только что искал способ заставить его произойти автоматически. Все, что мне нужно, это выполнить команду оболочки и получить вывод для отображения в качестве страницы.

Звучит неплохо для стажера.

=)

Позвоните своему хост и посмотреть, если вы можете выработать соглашение для выполнения оболочки выполнить.