понедельник, 9 февраля 2009 г.

NetCat добавление комментария в раздел

Для добавления возможности оставлять комментарий необходимо в раздел добавить компонент комментария и настроить его отображение. Заходим во вкладку "используемые компоненты" выбираем наш основной компонент (например статьи) далее переходим к визуальным настройкам компонента. В этом разделе отмечаем "галочками" доступны комментарии далее указываем идентификатор раздела с комментариями, а так же идентификатор компонента комментариев в разделе.

четверг, 5 февраля 2009 г.

NetCat подписка на изменения контента

В NetCat реализована подписка и уведомление по e-mail при добавлении информации на страницы сайта. Для реализации заходим на страницу, при изменении на которой, нам должны присылаться уведомления на почту. В адресной строке после слеша добавляем subscribe_ключевое_слово_страницы.html. Например: адрес страницы http://odintsovoportal.ru/hormenu/menu12/menu12-2/. Для подписки добавляем subscribe и получется: http://odintsovoportal.ru/hormenu/menu12/menu12-2/subscribe_menu12-2.html

Ошибка банк клиента "Наложение цифровой подписи.... DOS 32..."

Ошибка вызвана повреждением файла сетевого ключа. NLK. При устранении необходим дистрибутив банк-клиента. Заходим администратором. Меняем ключи.

вторник, 27 января 2009 г.

Как добавить пользователя Joomla через phpMyAdmin

Возникла сегодня простая задача: есть список пользователей (логин, пароль, имя и e-mail), необходимо по этому списку создать пользователей Joomla. Учитывая тот факт, что пользователей было немного, я решил написать SQL-запрос, чтобы вставить пользователей прямо из phpMyAdmin.

Информация о зарегистрированных пользователях Joomla хранится в нескольких таблицах:

  • jos_users
  • jos_core_acl_aro
  • jos_core_acl_groups_aro_map

Первая таблица является основной и содержит все данные о пользователе. Две другие таблицы принадлежат системе разграничения прав доступа Joomla и содержат информацию о принадлежности пользователя к конкретной группе пользователей Joomla.

Для того, чтобы добавить пользователя Joomla необходимо выполнить следующий запрос:



INSERT INTO jos_users( `name`, `username`, `password`, `email`, `usertype`, `gid` )
VALUES( 'Семен', 'semen', md5('12345'), 'sema@mail.ru', 'Registered', 25 );

INSERT INTO jos_core_acl_aro( `section_value`, `value` )
VALUES ( 'users', LAST_INSERT_ID() );

INSERT INTO jos_core_acl_groups_aro_map( `group_id`, `aro_id` )
VALUES ( 25, LAST_INSERT_ID() );

После выполнения такого запроса, в списке пользователей Joomla появится пользователь Иванов Иван, с логином ivanov и паролем 12345. Пользователь будет относиться к группе Registered, как будто бы он зарегистрировался через стандартный компонент регистрации пользователей Joomla.

В данном примере, пользователю автоматически присваивается группа Registered (во-первых эта информация прописывается в таблицу jos_users, а во-вторых значение 18 соответствует именно этой группе пользователей). Вот полный список групп и их названий (при необходимости можете вставить эти значения в запросы вместо 18 и 'Registered'):

  • 18 — 'Registered'
  • 19 — 'Author'
  • 20 — 'Editor'
  • 21 — 'Publisher'
  • 23 — 'Manager'
  • 24 — 'Administrator'
  • 25 — 'Super Administrator'

Вот так, просто и незатейливо можно добавлять пользователей Joomla из phpMyAdmin. Данный метод может использоваться для быстрого добавления заданного набора пользователей (ну допустим у вас есть 5 сайтов, и на них надо быстро добавить 5 редакторов, с одинаковыми данными для авторизации).

понедельник, 12 января 2009 г.

Перезагрузка сетевых интерфейсов

Команды для работы с сетевыми интерфейсами. Первая отключение, вторая включение
netsh interface set interface name="2-str_56" admin=disable
netsh interface set interface name="2-str_56" admin=enable

Эти команды проверяют пингом узел в сети и если он недоступен выполняют командный файл interface_lan.bat. В котором, кстати, можно указать две предыдущие команды.
ping -n 1 -w 5000 192.168.40.233
if not %errorlevel%==0 (echo Inet is down & interface_lan.bat)
echo Inet Avaylable

воскресенье, 14 декабря 2008 г.

chmod - права

Для установки прав доступа используется команда chmod (CHange MODe). Права удобнее указывать в числовом формате: 4 — это право на чтение, 2 — на запись, 1 — на выполнение. Сумма этих чисел дает окончательный набор прав, например 6 — это чтение и запись, но без выполнения, 7 — все права, 5 — чтение и выполнение... Таким образом, для скриптов, например, удобно указывать "chmod 755 myscript.cgi" — вы оставляете себе все права, а всем остальным разрешаете скрипт читать и выполнять (вы же не хотите, чтобы веб-сервер мог ваш скрипт изменить?). Для обычных файлов можно указывать 644 — вы сами можете файл модифицировать, а остальные — только читать.

пятница, 12 декабря 2008 г.

Как решить проблемы с доступом к файлам площадки, созданным PHP-скриптами?

Дело в том, что PHP-сценарии, запущенные модулем mod_php, выполняются от имени пользователя wwwserver. Соответственно, если на чтение/модификацию не были выставлены разрешения для всех (достаточно 666 — для файлов, 777 — для каталогов), то модификация созданных такими скриптами файлов (каталогов) пользователю uXXXX (id площадки) будет запрещена (при доступе по SSH, по FTP).

Исключить проблему можно, установив достаточные для модификации файлов посредством функции chmod.

Сделать это рекурсивно можно, исполнив PHP-сценарий: function chmod_R($path, $perm) {

$handle = opendir($path);
while (
false !== ($file = readdir($handle)) ) {
if ( (
$file !== ".") && ($file !== "..") ) {
if (
is_file($path."/".$file) ) {
chmod($path . "/" . $file, $perm);
}
else {
chmod($path . "/" . $file, $perm);
chmod_R($path . "/" . $file, $perm);
}
}
}
closedir($handle);
}

$path = $_SERVER["QUERY_STRING"];

if (
$path{0} != "/" ) {
$path = $_SERVER["DOCUMENT_ROOT"] . "/" . $path;
}

chmod_R($path, 0777);
echo
$path;
?>

Разместите этот файл на площадке, в директории, доступной веб-серверу, например, как domain.tld/www/chmod.php
где domain.tld/www — корневая директория (DocumentRoot) вашего сайта на сервере.

Вызывать скрипт нужно так: http://domain.tld/chmod.php?путь_к_нужной_директории
или так: http://domain.tld/chmod.php?
/home/uXXXXX/domain.tld/www/путь_к_нужной_директории

В первом случае указывается путь относительно DocumentRoot для вашего сайта (domain.tld/www/ в данном примере). Во втором случае (uXXXXX — идентификатор вашей площадки) — абсолютный путь от корневой директории сервера.

При запуске скрипта без параметров будут изменены права для всех файлов и директорий, располагающихся в DocumentRoot.