cyklop77

Рейтинг
5
Регистрация
18.01.2011
TiA:
Синглтон - это шаблон проектирования, который позволяет гарантировать, что в скрипте будет лишь один объект определенного класса. Реализуется обычно закрытием метода __construct() и реализации статического метода типа Get_Instance() который возвращает единственный экземпляр класса. Этот экземпляр хранится в статическом свойстве класса.

В примере выше просто объявили статический метод для подключения к базе данных и статическое свойство с идентификатором подключения. Вот и все.

но результат будет тот же самый - возможность существования только одного подключения

здесь статический класс. синглтон понятно как выглядит.

в показанный класс тоже можно добавить магические методы и плюшки

в теме? какая еще нужна? я добавлю.

или для апача?

линк есть. перезапускал. не помогает

cyklop77 добавил 27.04.2011 в 14:16

сделал как вы написали. в итоге не заработало.

вот сообщение консоли


root@debian:/etc/apache2/sites-available# apachectl -k restart
[Wed Apr 27 14:09:31 2011] [warn] NameVirtualHost *:80 has no VirtualHosts
root@debian:/etc/apache2/sites-available#

вот так выглядит файл хостов


NameVirtualHost *:80

<VirtualHost *:80>


ServerName joomla

DocumentRoot /var/www/joomla

ErrorLog /var/log/apache2/error.log
CustomLog /var/log/apache2/access.log combined

<Directory '/var/www/joomla/'>
AllowOverride All
Order Deny,Allow
Allow from All
</Directory>

</VirtualHost>

а не вспомните каким образом вы запускали индексацию? от предыдущего вебмастера осталась небольшая заметка о том, что это делается с помощью батника(а не из админки). я нашел всего 4 батника. первые два start.bat и stop.bat - это не то. вторые два я покажу, если вы не против.

у меня подозрение, что merge_index.bat это и есть нужный файл(но кажется судя по коду его нужно запускать не просто двойным кликом, а из ком строки с тремя параметрами. без указания параметром скрипт не прерывается и не отрабатывает).


merge_index.bat


@echo off

if "%1"=="" GOTO error
if "%2"=="" GOTO error
if "%3"=="" GOTO error
goto work
:error
echo Usage: merge_index.bat index_path1 index_path2 merged_index_path
exit 1

:work

rem export LD_LIBRARY_PATH=/usr/local/share/yandex/lib:/usr/local/lib:/usr/local/lib64:$LD_LIBRARY_PATH;


SET binDir=d:\server\Yandex\Server
SET index1=%1
SET index2=%2
SET indexRes=%3

SET MERGER_BIN="%binDir%\merger.exe"
SET DATAWORK_BIN="%binDir%\datawork.exe"
SET M2NSORT_BIN="%binDir%\m2nsort.exe"
SET WRLENDAT_BIN="%binDir%\wrlendat.exe"
SET INDEX1_BIN=%index1%
SET INDEX2_BIN=%index2%
SET INDEXRES_BIN=%indexRes%


%MERGER_BIN% %INDEX1_BIN%\index %INDEX2_BIN%\index
%DATAWORK_BIN% load -i index_map.txt -o index_map.dat -p 14 tfromtorec
%M2NSORT_BIN% -T %TEMP% -t yand -a index_map.dat -M 2 -N 1 -I %INDEX1_BIN%\index %INDEX2_BIN%\index -O %INDEXRES_BIN%\index
%M2NSORT_BIN% -T %TEMP% -t arc -a index_map.dat -M 2 -N 1 -I %INDEX1_BIN%\index %INDEX2_BIN%\index -O %INDEXRES_BIN%\index

if NOT EXIST %index1%\indexattr GOTO finish
if NOT EXIST %index2%\indexattr GOTO finish

%M2NSORT_BIN% -t attr -a index_map.dat -M 2 -N 1 -I %INDEX1_BIN% %INDEX2_BIN% -O %INDEXRES_BIN%

:finish
%WRLENDAT_BIN% %INDEXRES_BIN%\index
echo Merged index is written to %indexRes%


boray_idexer.bat


C:\server\Yandex\Server\dsindexer.exe -r

это хорошо, что умеет индексировать http...

но тогда я в ступоре. и последующие вопросы будут связаны с телепатией...

этот саит у предыдущего вебмастера индексировался нормально. сеичас же после добавления нового контента почему то без проблем находятся только старые страницы(id которых не изменился). новые страницы не находятся. а страницы старые, но id которых изменился находятся поисковиком, но представляют из себя белый экран(то есть ссылка ведет на старую страницу, которой уже не существует). как то так.

может у кого-нибудь были подобные проблемы? с чем они могут быть связаны?

яндекс умеет. но дело в том, что сайт организации доступен только пользователям внутренней сети. из интернета его не видно.

на этом моём сайте с mysql страницы не хранятся. только id и еще немного информации. порядок работы примерно следующий:

пользователь совершает действие. например жмет ссылку(которая содержит id),

ссылка каким то хитрым способом(мод реврайт кажется) попадает на страницу, на которой разбирается. из нее вытаскивается id и формируется запрос к БД.

этот запрос вытаскивает еще некоторую информацию из БД, которая используется в html-шаблоне.

вот эти готовые html-шаблоны мне нужно проиндексировать.

можно ли в этой ситуации использовать yandex.server или стоит попробовать другой движок?

О! столько ответов. даже не ожидал, спасибо всем.

YS с mysql работать может, но только если используется linux. по крайней мере так написано в документации

(http://api.yandex.ru/server/doc/concepts/y-ds-my-sql.xml).

про windows там информации нет.

в моей БД хранятся только id страниц. эти id используются в адресе, примерно вот таким образом

http://r.ru/doc_90701.html

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

дело в том, что сайт, с которым я работаю иже имел рабочий индекс и соответственно поиск производился. но некоторое время назад я обновил информацию в БД и теперь имею описанные выше проблемы.

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

через

http://int.rm.vt.ru:17000/admin

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