Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
Boris

Можно ли перевести форум в оффлайн через conf_global.php?

Рекомендованные сообщения

В 2.0.0 в conf_global.php был параметр:

 

$INFO['board_offline'] = '1';

и там стояла единичка или нолик в зависимости от статуса форума.

 

В 3.3.х этого нет?

 

 

Что я хочу?

сделать крон на следующее:

1) перевод форум в оффлайн

2) бэкап через sypex без сжатия

3) перевод форум в онлайн

4) сжатие бэкапа

 

 

Почему я хочу бэкапить отключённый форум? мне так спокойнее.

при переезде был трабл что дублировались какие то строчки в таблице постов при включённом форуме.

при отключённом - всё было гладко

Поделиться сообщением


Ссылка на сообщение

В самой админке форума, можно перевести форум offline

Поделиться сообщением


Ссылка на сообщение

@Атаман,

это понятно

 

но я же ясно изъяснил. хочу автоматизировать через крон.

Поделиться сообщением


Ссылка на сообщение

Настройки > Системные настройки > Система > Отключение форума

 

При помощи данной группы настроек, вы можете включить или выключить (режим offline) ваш форум для пользователей.

 

Но нужно проверить еще группы пользователей, чтобы не было вкл галки. Пользователи Могут просматривать отключенный форум?

Поделиться сообщением


Ссылка на сообщение

Понял.

Поделиться сообщением


Ссылка на сообщение

Нужно тогда создать задачу в планировщике задач.

Поделиться сообщением


Ссылка на сообщение

@Атаман,

 

вот тут и вопрос. имеет ли смысл?

в самом conf_global.php я не нахожу параметра для отключённого форума как это было в двушке.

пробовал играться на тестовом полигоне и добавить - не катит.

Поделиться сообщением


Ссылка на сообщение

Нужно тогда создать задачу в планировщике задач.

 

Там можно использовать, через крон.

Поделиться сообщением


Ссылка на сообщение

@Атаман,

я очень ценю Ваше желание ответить, но Вы, похоже, не понимаете вопроса.

 

Вопрос не в самом кроне/планировщике, а в том как можно перевести форум в оффлайн при помощи conf_global.php наподобие того как это было в двушке.

Пока что я не вижу, что это возможно

Поделиться сообщением


Ссылка на сообщение

Нет, не будеть работать. Там сейчас система такая, что в массив настроек сначала загружается $INFO из conf_global.php, а потом поверх этих данных добавляются все значитения таблицы core_sys_conf_settings из БД. И board_offline внесена в эту таблицу. Что бы вы не назначили для $INFO['board_offline '], оно все равно перезапишется значением из базы.

 

Придется писать что-то вроде этого:

 

<?php

include('conf_global.php');

mysql_connect($INFO['sql_host'], $INFO['sql_user'], $INFO['sql_pass']) or die( mysql_error() );
mysql_select_db($INFO['sql_database']) or die( mysql_error() );
mysql_query("UPDATE {$INFO['sql_tbl_prefix']}core_sys_conf_settings SET conf_value = 1 WHERE conf_key = 'board_offline'") or die( mysql_error() );
mysql_close();
?>

 

А еще можно сюда же вписать очистку таблицы логов посещений (если ведутся) и очистку таблицы кэша, чтобы легче было дампы снимать :)

  • Upvote 2

Поделиться сообщением


Ссылка на сообщение

Большое спасибо

Это именно то что я хотел.

Поделиться сообщением


Ссылка на сообщение

Не, там на самом деле немного по другому, board_offline загружается из кеша настроек, так что его апдейт в таблице настроек не даст никаких результатов. Сам с этим столкнулся, когда отключал форум таким запросом, а он продолжал работать как ни в чем не бывало.

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

@siv1987,

так и есть. не отключает

Поделиться сообщением


Ссылка на сообщение

Ну так кэш все равно в БД лежит (по-умолчанию), так что либо радикально:

 

<?php

include('conf_global.php');

mysql_connect($INFO['sql_host'], $INFO['sql_user'], $INFO['sql_pass']) or die( mysql_error() );
mysql_select_db($INFO['sql_database']) or die( mysql_error() );
mysql_query("UPDATE {$INFO['sql_tbl_prefix']}core_sys_conf_settings SET conf_value = 1 WHERE conf_key = 'board_offline'") or die( mysql_error() );
mysql_query("TRUNCATE {$INFO['sql_tbl_prefix']}cache_store") or die( mysql_error() );
mysql_close();
?>

 

Либо более нежно:

 

<?php

include('conf_global.php');

mysql_connect($INFO['sql_host'], $INFO['sql_user'], $INFO['sql_pass']) or die( mysql_error() );
mysql_select_db($INFO['sql_database']) or die( mysql_error() );
mysql_query("UPDATE {$INFO['sql_tbl_prefix']}core_sys_conf_settings SET conf_value = 1 WHERE conf_key = 'board_offline'") or die( mysql_error() );
mysql_query("DELETE FROM {$INFO['sql_tbl_prefix']}cache_store WHERE cs_key = 'settings'") or die( mysql_error() );
mysql_close();
?>

 

Собственно, об этом и думал, когда вот это писал:

А еще можно сюда же вписать очистку таблицы логов посещений (если ведутся) и очистку таблицы кэша,
  • Upvote 2

Поделиться сообщением


Ссылка на сообщение
10/13/12 08:27 (изменено)

Может я глупость скажу, но все же.

 

А кто мешает, в скрипте указать на время создания бэкапа так:

 

1. Добавляем на сайт файл index.htm(l) с текстом типа "Сайт закрыт зайдите позже"

2. Включается cron а нем:

а) Переименовать index.php в index.php1 (таким образом стартовая страница автоматом будет загружаться index.htm(l)

B) Cron отработал

c) Переименовать index.php1 в index.php

 

Собственно все...

 

ПыСы смайлик не правильный b_) отображается как B)

Изменено пользователем podvorie

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...