CompoWiki Форум

Интернет и Сети => Тех. помощь => Тема начата: Ukraina от 02 апреля, 2007, 21:05:24

Название: Форум на движке SMF в Интранете
Отправлено: Ukraina от 02 апреля, 2007, 21:05:24
Господа!

После установки форума на движке SFM столкнулся со следующими неудобствами. Этот форум устанавливается LOCALHOST, да еще на локальной машине. Не совсем понял, как это можно применить для ИНтранет сети. Дело в том, что в настоящее время для работы в Интранете использую Small HTTP Server Макса Феоктистова. Он очень удобен и прост для меня: возможность легкого применения e-mail и удобство обращения к страницам, т.е можно написать адрес как с http:\\ так и без него - все равно найдет!!! Денвер же жеско приваривает к названию, что накладывает ограничения при обучении (не очень удобно объяснять курсантам моменты ограничения). Кроме того Small HTTP Server и Денвер абсолютно не совместимы!!! Если вы знакомы с Small HTTP Server, то поймете мои проблемы. Как можно применить и использовать все это. Какой сервер лучше использовать, но со всеми "удобствами" (е-mail, корректное обращение по адресам)
Название: Форум на движке SMF в Интранете
Отправлено: abram4 от 03 апреля, 2007, 02:36:58
Привет, Ukraina  :hiya: 
 
ЦитироватьПосле установки форума на движке SFM столкнулся со следующими неудобствами. Этот форум устанавливается LOCALHOST, да еще на локальной машине. Не совсем понял, как это можно применить для ИНтранет сети.
[snapback]3034[/snapback]
Точнее говоря, форум устанавливается на сервер. С точки зрения сервера обращение к форуму (т.е. к самому себе) идет по адресу с именем localhost на порт 80 (по умолчанию). Для того, чтобы форум был доступен для других машин его надо ставить в папку с другим названием , скажем , forum.loc (поскольку по localhost каждый будет обращаться к самому себе). После этого останется небольшая задача "сказать" остальным компам что в "ура, в нашей сети появился форум". К этому форуму можно будет обращаться по IP адресу компа, но конечно же, по имени обращаться удобнее. Так вот, других надо оповестить, что комп с адресом, например, 192.168.0.10 отзывается на имя forum.loc . Эту задачу обычно выполняет сервер DNS, а в маленьких сетях, где такой сервер - роскошь, можно воспользоваться файлом hosts (http://wiki.compowiki.info/FajjlHosts).  Кстати, Денвер сам заботится об этом файле на машине где установлен. На других надо соответственно этот файл дополнить новой записью. 

ЦитироватьДело в том, что в настоящее время для работы в Интранете использую Small HTTP Server Макса Феоктистова.
[snapback]3034[/snapback]
При всем уважении к такому шедевру как Small HTTP Server , он все же остается именно Small. То есть, в нем нет встроенного php+mysql . А эти механизмы - обязательное условие для установки почти всех движков форумов и сайтов.

ЦитироватьОн очень удобен и прост для меня: возможность легкого применения e-mail и удобство обращения к страницам, т.е можно написать адрес как с http:\\ так и без него - все равно найдет!!! Денвер же жеско приваривает к названию, что накладывает ограничения при обучении (не очень удобно объяснять курсантам моменты ограничения).

тут я не понял вопроса  :huh: Приставку http:\\ вроде бы пишет сам браузер   :idontknow:

ЦитироватьКроме того Small HTTP Server и Денвер абсолютно не совместимы!!! Если вы знакомы с Small HTTP Server, то поймете мои проблемы. Как можно применить и использовать все это.
А зачем быть совместимыми двум серверам? Все равно одновременно может работать только один. К тому ж, у каждого своя область деятельности.

ЦитироватьКакой сервер лучше использовать, но со всеми "удобствами" (е-mail, корректное обращение по адресам)
Лучше всего использовать Апач :) Вот только конфигурировать его я так и не научился. Поэтому по крестьянски юзаю разные наборчики типа all-in-one. Пользовался Денвером, как-то включал AppServ (http://www.appservnetwork.com/), сейчас юзаю xampp (http://www.apachefriends.org/en/xampp-windows.html). Настройка e-mail системы форума SMF возможна даже с использованием имеющегося где-то почтового ящика с SMTP сервером, я думаю, для небольшого форума этого может быть достаточно.
Название: Форум на движке SMF в Интранете
Отправлено: Ukraina от 03 апреля, 2007, 17:06:22
Приветствую!
Благодарю за совет.
Проконсультировавшись у Макса Феоктистова (автора Small HTTP Server) получил хорошую новость и убедился, что можно его продукт использовать, как совместимый с PHP/MySql!!!
Для еэтого снес Денвер, отдельно установил PHP4 (с настройками, рекомендованными Максом Феоктистовым) и  MySql. После этого выполнил все условия установки SFM и все заработало.

Единственное есть проблемы: часто при обнавлдении страниц, регистрации, новой темы, выводиться страница с билибирдой с надписью в первой строчке типа ошибка скрипта и ошибкой обращения по адресу 127.0.0.1. Но надеюсь, что эта гадость исчезнет при установке системы на "нормальном" Интранете
Название: Форум на движке SMF в Интранете
Отправлено: abram4 от 03 апреля, 2007, 23:53:46
ЦитироватьПроконсультировавшись у Макса Феоктистова (автора Small HTTP Server) получил хорошую новость и убедился, что можно его продукт использовать, как совместимый с PHP/MySql!!!
[snapback]3040[/snapback]
Никто и не сомневался что это возможно :)  Только странно, что Макс Феоктистов не опубликовал инструкцию на своем сайте, ИМХО, это бы значительно увеличило популярность и универсальность его программы.

ЦитироватьЕдинственное есть проблемы: часто при обнавлдении страниц, регистрации, новой темы, выводиться страница с билибирдой с надписью в первой строчке типа ошибка скрипта и ошибкой обращения по адресу 127.0.0.1. Но надеюсь, что эта гадость исчезнет при установке системы на "нормальном" Интранете
Не надейся, если есть проблемы при работе на localhost , то при нагрузке другими компами этих проблем меньше не станет.
Название: Форум на движке SMF в Интранете
Отправлено: SVS от 29 мая, 2007, 19:10:34
Проблемы с кодировкой заключаются в ненастроенных конфигах MySQL, PHP.
Можно настроить вручную, прописав кодировки, а можно использовать скрипт для исправления кодировки мускула:

// upgrade CHARACTER SET for MySQL 4.1.0 +

$conn = mysql_connect("localhost", "your login", 'your pass');
$printonly=false; //change this to false to alter on the fly
$charset="cp1251";
$collate="cp1251_general_ci";
$altertablecharset=true;
$alterdatabasecharser=true;

function PMA_getDbCollation($db)
{
$sq='SHOW CREATE DATABASE `'.$db.'`;';
$res = mysql_query($sq);
if(!$res) echo "\n\n".$sq."\n".mysql_error()."\n\n"; else
if($row = mysql_fetch_assoc($res))
{
 $tokenized = explode(' ', $row[1]);
 unset($row, $res, $sql_query);
 for ($i = 1; $i + 3 < count($tokenized); $i++)
 {
  if ($tokenized[$i] == 'DEFAULT' && $tokenized[$i + 1] == 'CHARACTER' && $tokenized[$i + 2] == 'SET')
  {
   if (isset($tokenized[$i + 5]) && $tokenized[$i + 4] == 'COLLATE')
   {
    return array($tokenized [$i + 3],$tokenized[$i + 5]); // We found the collation!
   }
   else
   {
    return array($tokenized [$i + 3]);
   }
  }
 }
}
return '';
}

?>

<br /><?<br /><br />$rs2 = mysql_query("SHOW DATABASES"); <br />if(!$rs2) echo "\n\n".$sq."\n".mysql_error()."\n\n"; else<br />while ($data2 = mysql_fetch_row($rs2))<br />{<br />$db=$data2[0];<br />$db_cha=PMA_getDbCollation($db);<br />if ( $db!='mysql' /* &amp;&amp;( $db=='mydb_x' || $db=='mydb_y' ) */ ) // limit to database(s) - $db=='mydb_x' || $db=='mydb_y' || $db=='mydb_z'<br />if ( substr($db_cha[0],0,4)!='utf8' ) // limit to charset<br />{<br />mysql_select_db($db);<br />$rs = mysql_query("SHOW TABLES"); <br />if(!$rs) echo "\n\n".$sq."\n".mysql_error()."\n\n"; else<br />while ($data = mysql_fetch_row($rs))<br />{<br /><br />//search indexes<br />$indexes=array();<br />$ind_names=array();<br />$rs_i = mysql_query("show indexes from $data[0]"); <br />if(!$rs_i) echo "\n\n".$sq."\n".mysql_error()."\n\n"; else<br />while ($data_i = mysql_fetch_assoc($rs_i))<br />{<br />  if($data_i['Index_type']=='FULLTEXT') {<br />    $sq='drop index '.$data_i['Key_name'].' on '.$data[0];<br />    if(!in_array($data_i['Key_name'],$ind_names)) {<br />      if(!$printonly&amp;&amp;!mysql_query($sq)) echo "\n\n".$sq."\n".mysql_error()."\n\n"; else echo ($sq."\n");<br />    $indexes[$data_i['Key_name']]=$data_i;<br />    } else {$indexes[$data_i['Key_name']]['Column_name'].=', '.$data_i['Column_name'];<br />    };<br />    $ind_names[]=$data_i['Key_name']; <br />  }<br />}<br /><br />$rs1 = mysql_query("show FULL columns from $data[0]"); <br />if(!$rs1) echo "\n\n".$sq."\n".mysql_error()."\n\n"; else<br />while ($data1 = mysql_fetch_assoc($rs1))<br />{<br />  if(in_array(array_shift(split("\\(",$data1['Type'],2)),array(<br />//'national char',<br />//'nchar',<br />//'national varchar',<br />//'nvarchar',<br />'char',<br />'varchar',<br />'tinytext',<br />'text',<br />'mediumtext',<br />'longtext',<br />'enum',<br />'set'<br />  ))) <br />  {<br />   if(substr($data1['Collation'],0,4)!='utf8') // limit to charset<br />   {<br />    $sq="ALTER TABLE `$data[0]` CHANGE `".$data1['Field'].'` `'.$data1['Field'].'` '.$data1['Type'].' CHARACTER SET binary '.($data1['Default']==''?'':($data1['Default']=='NULL'?' DEFAULT NULL':' DEFAULT \''.mysql_escape_string($data1['Default']).'\'')).($data1['Null']=='YES'?' NULL ':' NOT NULL').';';<br />    if(!$printonly&amp;&amp;!mysql_query($sq)) echo "\n\n".$sq."\n".mysql_error()."\n\n"; <br />    else<br />    {<br />     echo ($sq."\n"); <br />     $sq="ALTER TABLE `$data[0]` CHANGE `".$data1['Field'].'` `'.$data1['Field'].'` '.$data1['Type']." CHARACTER SET $charset ".($collate==''?'':"COLLATE $collate").($data1['Default']==''?'':($data1['Default']=='NULL'?' DEFAULT NULL':' DEFAULT \''.mysql_escape_string($data1['Default']).'\'')).($data1['Null']=='YES'?' NULL ':' NOT NULL').($data1['Comment']==''?'':' COMMENT \''.mysql_escape_string($data1['Comment']).'\'').';';<br />     if(!$printonly&amp;&amp;!mysql_query($sq)) echo "\n\n".$sq."\n".mysql_error()."\n\n"; <br />     else echo ($sq."\n"); <br />    }<br />   }<br />  }<br />}<br />if($altertablecharset)<br />{<br />  /*<br />  $sq='ALTER TABLE `'.$data[0]."` DEFAULT CHARACTER SET binary";<br />  echo ($sq."\n"); <br />  if(!mysql_query($sq)) echo "\n\n".$sq."\n".mysql_error()."\n\n";<br />  */<br />  $sq='ALTER TABLE `'.$data[0]."` DEFAULT CHARACTER SET $charset ".($collate==''?'':"COLLATE $collate");<br />  echo ($sq."\n"); <br />    if(!$printonly)<br />  if(!mysql_query($sq)) echo "\n\n".$sq."\n".mysql_error()."\n\n";<br />}<br /><br /><br />foreach ($indexes as $ind)<br />{<br />    $sq='create fulltext index `'.$ind['Key_name'].'` on `'.$data[0].'` ('.$ind['Column_name'].')';<br />    if(!$printonly&amp;&amp;!mysql_query($sq)) echo "\n\n".$sq."\n".mysql_error()."\n\n"; else echo ($sq."\n");<br />  <br />}<br /><br />}<br />if($alterdatabasecharser)<br />{<br />  /*<br />  $sq='ALTER DATABASE `'.$data2[0]."` DEFAULT CHARACTER SET binary";<br />  echo ($sq."\n"); <br />  if(!mysql_query($sq)) echo "\n\n".$sq."\n".mysql_error()."\n\n";<br />  */ <br />  $sq='ALTER DATABASE `'.$data2[0]."` DEFAULT CHARACTER SET $charset ".($collate==''?'':"COLLATE $collate");<br />  echo ($sq."\n"); <br />    if(!$printonly)<br />  if(!mysql_query($sq)) echo "\n\n".$sq."\n".mysql_error()."\n\n";<br />}<br />}<br />}<br />?><br /></code><br /><br />Логин и пасс в скрипте, естественно, прописываете свои. Скопируйте и исправьте логин с паролем, сохранив скрипт, допустим, под именем mysql_charset.php и залить его в корневой каталог www вебсервера и запустить его в браузере.<br />Возможно, что проблема заключена в прописанном в php.ini (как правило, он прописывается в системном каталоге WINDOWS) другой кодировки, так что исправьте строчки дефолтной латинской кодировки для отображения в браузере на win-1251. <br />Если что-то не поняли из моей писанины или не получается, или потерялись, то спрашивайте </div><!-- .postbody --> <div class="postheader"> Название: <strong>Форум на движке SMF в Интранете</strong><br> Отправлено: <strong>SVS</strong> от <strong>30 мая, 2007, 06:05:45 </strong> </div> <div class="postbody"> Какая же сборка веб-сервера лучше? Это уже каждый решает для себя сам, учитывая цели, задачи и возможности. Моё мнение: самая лучшая сборка - это отдельная установка и настройка нужных компонентов (Apache + PHP + MySQL +...). Все основные составляющие распространяются абсолютно свободно, бесплатно и без ограничений. Мучительно будет казаться поначалу, но зато, благодаря ручной установке и самоличной настройке, вы приобретёте необходимые знания, понимание всей &quot;кухни&quot; и, самое главное, независимость и свободу.<br />Существуют готовые решения. Но, поймите, это всё равно немного не то... Взять, к примеру, Денвер. Да, он будет работать в локальной сети, но он категорически не приемлем для этого, так как он сконфигурирован так, что вы на добровольной основе широко распахиваете доступ к святая святых всех ушлых и охочих до взлома, это всё равно, что как вы ушли из дома, а ключик от квартиры даже под коврик не удосужились спрятать, а повесили прямо с замочной скважиной. Денвер, по предупреждениям разработчиков, рассчитан для локальной обкатки и отработки своих (или чужих) трудов без использования и зависимости от наличия Интернета.<br />Для использования и изучения в сети из полных пакетов готовой сборки могу посоветовать Apache2Triad ( http://apache2triad.net/ (http://apache2triad.net/) ) Пакет содержит Apache2 (веб-сервер) , MySQL (сервер БД) , PostgreSQL (сервер базы данных), OpenSSL , Xmail (e-mail cервер), SlimFTPd (FTP сервер), PHP , Perl и Python (скриптовые языки веб-программирования), Apache2TriadCP (контрольная панель администрирования сервера), PHPmyadmin (администрирование БД MySQL), PHPPgAdmin (администрирование БД PostgreSQL), AWStats (монитор веб-сервера), UebiMiau (е-mail client), PHPXMail (администрирование почтового сервера), PHPSFTPd (администрирование FTP-cервера).<br />Но самая лучшая сборка всё-таки ручная... Могу пошагово описать процесс установки и настройки, если кому актуально :) </div><!-- .postbody --> <div class="postheader"> Название: <strong>Форум на движке SMF в Интранете</strong><br> Отправлено: <strong>XSunX</strong> от <strong>01 июня, 2007, 22:34:29 </strong> </div> <div class="postbody"> <blockquote class="bbc_standard_quote"><cite>Цитировать</cite>Какая же сборка веб-сервера лучше? Это уже каждый решает для себя сам, учитывая цели, задачи и возможности.<br /><div class="righttext">[snapback]3077[/snapback]</div></blockquote>Мне Денвер нравился. Очень. Для работы со всякими разностями в офф-лайне. Потом оказалось, что на нём не все нужные разности работают (подозреваю, что с Денвером можно договориться, чтобы всё работало, но лень читать мануалы). Теперь скрипты чужие порчу исключительно в он-лайн режиме... Это не всегда удобно. <br /><br /><blockquote class="bbc_standard_quote"><cite>Цитировать</cite>Могу пошагово описать процесс установки и настройки, если кому актуально :)<br /><div class="righttext">[snapback]3077[/snapback]</div></blockquote>Любопытно очень. <br />Цель - работа с cms-ами на локальном компе. </div><!-- .postbody --> <div class="postheader"> Название: <strong>Форум на движке SMF в Интранете</strong><br> Отправлено: <strong>abram4</strong> от <strong>02 июня, 2007, 22:22:04 </strong> </div> <div class="postbody"> <blockquote class="bbc_standard_quote"><cite>Цитировать</cite>Для использования и изучения в сети из полных пакетов готовой сборки могу посоветовать Apache2Triad <br /><div class="righttext">[snapback]3077[/snapback]</div></blockquote>полез я посмотреть на эту триаду и за 5 минут не нашел линка на скачку. То ли туплю, то ли они его сныкали ... Дальше влом стало ковыряться .. так и ушел ... не солоно хлебамши :( </div><!-- .postbody --> <div class="postheader"> Название: <strong>Форум на движке SMF в Интранете</strong><br> Отправлено: <strong>SVS</strong> от <strong>02 июня, 2007, 23:39:59 </strong> </div> <div class="postbody"> ничё не сныкали - всё работает! прямой линк http://sourceforge.net/project/downloading....4.exe&54848756 (http://sourceforge.net/project/downloading.php?group_id=93507&use_mirror=puzzle&filename=apache2triad1.5.4.exe&54848756)<br /> и по моей ссылке ткнуть там на this direct link и начнётся запрос загрузки на сохранение </div><!-- .postbody --> <div class="postheader"> Название: <strong>Форум на движке SMF в Интранете</strong><br> Отправлено: <strong>abram4</strong> от <strong>11 июня, 2007, 00:26:03 </strong> </div> <div class="postbody"> <blockquote class="bbc_standard_quote"><cite>Цитировать</cite>ничё не сныкали - всё работает! прямой линк<br /><div class="righttext">[snapback]3099[/snapback]</div></blockquote>аднака .... &nbsp; :newconfus: &nbsp; 90 с хвостиком мегабайт ... я весь в сомненьях &nbsp; :crazy: </div><!-- .postbody --> </div><!-- #posts --> <div class="print_options"> <strong><a href="https://forum.compowiki.info/index.php?action=printpage;topic=625.0">Только текст</a></strong> | <a href="https://forum.compowiki.info/index.php?action=printpage;topic=625.0;images">Текст с изображениями</a> </div><!-- .print_options --> <div id="footer" class="smalltext"><a href="https://forum.compowiki.info/index.php?action=credits" title="Лицензия" target="_blank" rel="noopener">SMF 2.1.7 &copy; 2026</a>, <a href="https://www.simplemachines.org" title="Simple Machines" target="_blank" rel="noopener">Simple Machines</a></div> </body> </html>