Мы — долго запрягаем, быстро ездим, и сильно тормозим.
www.lissyara.su —> статьи —> FreeBSD —> WWW —> VirtualBox + phpVirtualBox

Виртуализация на FreeBSD с использованием VirtualBox + phpVirtualBox

Автор: McSeem.


Захотел настроить на своём сервере виртуализацию, для бесплатного VPS. Имею FreeBSD и не имею иксов. Остановил свой выбор на VirtualBox + phpVirtualBox.

1. Начинаем установку. Переходим в каталог с VirtualBox:

# cd /usr/ports/emulators/virtualbox-ose

Внимание! В FreeBSD портирована только OSE версия, в которой нет поддержки RDP.

2. Устанавливаем:

# make && make install && make clean && rehash

Т.к на сервере нет иксов, выбираем следующие опции:

Options for virtualbox-ose 3.2.10_1

[X] DEBUG           Build with debugging symbols
[X] GUESTADDITIONS  Build with Guest Additions
[X] DBUS            Build with D-Bus and HAL support
[X] VDE             Build with VDE support
[X] VNC             Build with VNC support
[X] WEBSERVICE      Build Webservice


3. Перед первым запуском VirtualBox-а необходимо установить модуль ядра:

# kldload vboxdrv

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

# vboxdrv_load="YES" >> /boot/loader.conf

5. Запускаем ldconfig:

# /sbin/ldconfig -m /usr/local/lib/virtualbox

Теперь нам нужно как-то управлять нашим VirtualBox-ом. Для этого выберем Веб интерфейс. phpVirtualBox.

6. Устанавливаем phpVirtualBox:

# cd /usr/ports/www/phpvirtualbox

# make && make install && make clean

Далее нам необходимо настроить файрвол, DNS сервер и WEB сервер. Данный пункт вам придется настроить самостоятельно в зависимости от ваших серверов. У меня используются ipfw, BIND и Apache. Apache настраиваем на директорию /usr/local/www/phpvirtualbox, именно суда по умолчанию устанавливается phpvirtualbox.

7. Перезагружаем ipfw, Apache и BIND для применения изменений.

8. Переходим на страницу http://phpvirtualbox.mydomain.name

Не запускается. Т.к. у меня PHP установлено без поддержки SOAP.

9. Удаляем PHP:

# cd /usr/ports/lang/php5

# make deinstall

10. Ставим PHP с поддержкой SOAP:

# cd /usr/ports/net/php5-soap

# make && make install && make clean

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

- php5-json
- php5-mysql
- php5-session
- php5-sockets
- php5-xml
- php5-xmlrpc


И подконфигурировать php.ini. У вас может список будет другим, а может и вообще не возникнет проблем.

11. После этого создаём пользователя для работы phpvirtualbox:

# adduser phpvbuser

12. Для работы phpvirtualbox наш пользователь должен входить в группу vboxuser, создаём группу:

# pw groupadd vboxusers

13. Добавляем пользователя в группу:

# pw groupmod vboxusers -m phpvbuser

14. Правим конфиг любым удобным редактором:

# vi /usr/local/www/phpvirtualbox/config.php

в нём нас интересует 2 строки:

- var $username = 'phpvbuser';
- var $password = 'пароль';


15. Назначаем в собственность phpvbuser каталог с phpvirtualbox:

# chown -R phpvbuser:vboxusers /usr/local/lib/virtualbox

16. Создаём скрипт для автозапуска phpvirtualbox после перезагрузки:

# touch /usr/local/etc/rc.d/phpvirtualbox.sh

17. И правим любым удобным редактором:

# vi /usr/local/etc/rc.d/phpvirtualbox.sh

Добавляем в него примерно следующее:

#!/bin/sh

echo -n 'phpVirtualBox daemon'

case "$1" in
start)
 su - phpvbuser -c "vboxwebsrv -t 0 -F /dev/null"
 ;;
stop)
 killall vboxwebsrv
 killall VBoxSVC
 killall VBoxXPCOMI
 ;;
*)
 echo "Usage: `basename $0` {start|stop}" >&2
 exit 64
 ;;
esac
exit 0


18. После этого запускаем phpvirtualbox:

# su - phpvbuser -c vboxwebsrv -H localhost -p 18083 -t 0 -F /dev/null"

Дальше, всё как в GUI:

19. Переходим на страницу, что настроили в Apache:



20. Cоздаём новую машину:



21. Вводим название и выбираем устанавливаемую ОС:



22. Выбираем объём оперативной памяти:



23. Выбираем существующий диск или создаём новый:





24. Выбираем тип жесткого диска, фиксированный размер или динамичиски увеличивающийся до определённого размера:



25. Задаём размер нашего диска:



26. Просматриваем суммарную информацию по выбранной конфигурации:



27. В списке виртуальных компьютеров выбираем наш компьютер и запускаем его:



Т.к. нет поддержки RDP можно устанавливать заказанную систему на отдельном компьютере, настраивать удалённый доступ и подкладывать в новую виртуальную машину уже готовый жесткий диск, а дальнейшие действия пусть проводит клиент на своей виртуальной мишине.

Но если кто-нибудь напортачит с виртуальной машиной, например "правильно" настроив файрвол\подмонтировав диск, или что-то в этом роде, так, что нет возможности подключиться удалённо по SSH\Telnet или другим удобным способом, то придётся этой машине настраивать консоль. Но в phpVirtualBox данной вкладки нет, т.к. мы установили версию OSE. Но мы собрали с поддержкой VNC. Поэтому для таких случаев для клиентов можно запускать на день доступ к консоли компьютера.

28. Делаем к примеру такой скриптик:

# touch /usr/local/virtualboxvnc.sh

29. И правим любым удобным редактором:

# vi /usr/local/virtualboxvnc.sh

Добавляем в него примерно следующее:

#!/bin/sh

vpc="$1"
port="$2"
pass="$3"

# Запускаем виртуальную машину под названием "vpc" (-s), с поддержкой VNC (-n), на порту "port" (-m), c паролем для доступа к VNC "pass" (-o)

su - phpvbuser -c "VBoxHeadless -s $vpc -n -m $port -o $pass"

# Перезапускаем через сутки машину в обычном режиме (без VNC)

echo su - phpvbuser -c \"VBoxManage controlvm $vpc reset\" | at now + 1 days

exit 0


29. Запускаем скрипт с параметрами: имя виртуального компа, порт на котором будет слушать VNC, пароль для доступа к VNC:

# /usr/local/virtualboxvnc.sh Client1_OpenSolaris 5500 password

Не забываем открыть порт на файрволе для доступа с наружи к VNC серверу.

30. Сообщяем клиенту порт, пароль доступа и срок ребута машины. И он может подключаться любым клиентом VNC к заданному порту вешего сервера и работать консольно с виртуальной машиной:



размещено: 2010-11-29,
последнее обновление: 2010-12-02,
автор: McSeem


VVD, 2010-12-26 в 1:05:23

9. Удаляем PHP:
# cd /usr/ports/lang/php5
# make deinstall
10. Ставим PHP с поддержкой SOAP:
# cd /usr/ports/net/php5-soap
# make && make install && make clean

А разве не достаточно просто сделать пункт №10, не делая №9?

ufs, 2011-01-01 в 17:12:38

VVD ггг
p.s. Норм. статья, респект автору!

Bell_ringer, 2011-01-08 в 18:10:22

Error storing caсhe - как это лечится? Перепробовал уже всё что можно ((

Bell_ringer, 2011-01-08 в 23:09:34

Фсё, супер, решилось переустановкой phpVirtualBox ))

McSeem, 2011-01-09 в 8:07:42

Bell_ringer, супер что решилось :)
'Error storing cache' - ошибка доступа к кэшу, скорее всего не хватает прав на директорию, где хранится кэш для пользователя "пхпвиртуалбокс". Значит перестановка назначила права правильно, можно было либо самому выставить права, либо в файле phpvirtualbox/config.php можно настроить расположение кэша: var $cachePath = '/tmp';

Ghost, 2011-02-15 в 18:26:34

У меня возникла следующая бага
Error Fetching http headers

An error occurred communicating with your vboxwebsrv. No more requests will be sent by phpVirtualBox until the error is corrected and this page is refreshed. The details of this connection error should be displayed in a subsequent dialog box.

Бьюсь 2 день (( решения невижу.

VVD, 2011-02-15 в 18:48:26

Попробуй перезапустить vboxwebsrv руками.
У него прямо бяда в версии 3.2.x - отвалиается регулярно.
С 4.0.2 в этом плане всё замечательно.

McSeem, 2011-02-15 в 19:14:32

Выполнял пункт №9 ? Похоже конфликт есть.. а что в логах апача?

Ghost, 2011-02-15 в 22:17:24

Долго копался теперь пишет вот такую ошибку  Error logging in or connecting to vboxwebsrv. ((( В логе апача ошибок нет

Ghost, 2011-02-15 в 22:19:28

Вот появилась ошибка в логе апача
[Tue Feb 15 19:12:50 2011] [notice] Apache/2.2.17 (FreeBSD) mod_ssl/2.2.17 OpenSSL/0.9.8n DAV/2 PHP/5.3.5 configured — resuming normal operations
[Tue Feb 15 19:14:19 2011] [notice] caught SIGTERM, shutting down
[Tue Feb 15 19:14:19 2011] [warn] Init: Session Cache is not configured [hint: SSLSessionCache]

Ghost, 2011-02-15 в 23:09:58

Поборол проблему следующем образом. Авторизацию можно отключить VBoxManage setproperty websrvauthlibrary null (под пользователем из под которого запускается виртуалбокс)
или включить снова если появятся идеи как поправить багу
VBoxManage setproperty websrvauthlibrary one. Теперь возникла следубщая проблема VirtualBox error: (0x80070057).
Идей больше нет может кто что подскажет ((

Ghost, 2011-02-15 в 23:09:59

Поборол проблему следующем образом. Авторизацию можно отключить VBoxManage setproperty websrvauthlibrary null (под пользователем из под которого запускается виртуалбокс)
или включить снова если появятся идеи как поправить багу
VBoxManage setproperty websrvauthlibrary one. Теперь возникла следубщая проблема VirtualBox error: (0x80070057).
Идей больше нет может кто что подскажет ((

Gost, 2011-02-16 в 10:03:45

Ещё проблемка вэб интерфейс запустился машина создаётся но при попытке её запустить вылетает с ошибкой  The virtual machine 'winxp' has terminated unexpectedly during startup with exit code 1. Пишут что это ошибка ядра.  как решить даже не представляю.

demon, 2011-02-21 в 19:02:00

The virtual machine 'winxp' has terminated unexpectedly during startup with exit code 1
У меня решилась тем, что права # chown -R phpvbuser:vboxusers /usr/local/lib/virtualbox нужно сделать так: # chown -R root:vboxusers /usr/local/lib/virtualbox или вообще изначально править только группу

alik1c, 2011-05-30 в 15:03:10

Спасибо за статью, но вот скринами ты мне чуть глаза не сломал.

Ха-Ха-Ха, 2011-06-07 в 15:50:05

Товарищи! Это поля для ввода комментариев к статье, а не для вопросов. Сюда пишите найденные баги, или какие-то фичи :)
Для вопросов есть форум!

user, 2011-06-13 в 15:06:30

Кривое уебище, ничего не работает и в статье ошибка на ошибке

Нуб, 2011-08-02 в 1:08:19

Тупо спиздили с опеннета
http://www.opennet.ru/base/sys/virtualbox_freebsd.txt.html

Афтарлох

McSeem, 2011-08-02 в 8:48:42

> user, 2011-06-13 в 15:06:30
> Кривое уебище, ничего не работает и в статье ошибка на ошибке
  Если руки из жопы ростут срочно уйди нахуй от сервера!

> Нуб, 2011-08-02 в 1:08:19
> Тупо спиздили с опеннета
> http://www.opennet.ru/base/sys/virtualbox_freebsd.txt.html
> Афтарлох
  Дибил,хоть посмотрел бы на автора там и тут...

Den, 2011-08-02 в 8:57:43

хааа!!!! Нуб, ДОЛБОЁБ!!!!!!!!!!!!!!

Alex Keda, 2011-08-02 в 10:33:01

Ещё можно дату посмотреть...
Тут размещено на месяц раньше =))

ХУй, 2012-01-10 в 5:55:49

Уебаны ололо
Хуйшоработает Афтар лох пиши исчо,!!!!!!1111111

McSeem, 2012-01-14 в 20:40:59

>ХУй, 2012-01-10 в 5:55:49
>Уебаны ололо
>Хуйшоработает Афтар лох пиши исчо,!!!!!!1111111
Хуилище,а ты что такой нервный? у тебя секс давно был? тебе вообще бабы дают?

SkiNNi, 2012-01-30 в 17:56:45

не втягивайся во флуд

SkiNNi, 2012-01-30 в 18:02:58

В FreeBSD портирована только OSE версия, в которой нет поддержки RDP.
а поподробней, в чём это выражается? Извини что туп. Отсутствует возможность прямого подключения к virtual box? И каким клиентом можно в полной версии.

McSeem, 2012-01-31 в 18:16:56

>SkiNNi
>не втягивайся во флуд
да,ты прав
На момент написания статьи для freebsd была только версия ose, в ней нет возможности через веб интерфейс видеть консоль виртуалки, но мне вполне удобно использовать vnc, т.к. доступ нужен в очень редких случаях, для винды хватает rdp\\ремоатадмина идр, для линукса использую ssh

SkiNNi, 2012-04-08 в 20:49:12

Случайно не пропущена кавычка # su - phpvbuser -c "vboxwebsrv -H localhost -p 18083 -t 0 -F /dev/null" ??

SkiNNi, 2012-04-08 в 21:27:30

VirtualBox web service 4.1.10_OSE r76795 freebsd.x86 (Mar 31 2012 16:09:04) release log
00:00:00.003 main     Log opened 2012-04-08T10:47:09.698109000Z
00:00:00.004 main     OS Product: FreeBSD
00:00:00.004 main     OS Release: 9.0-RELEASE
00:00:00.004 main     OS Version: FreeBSD 9.0-RELEASE #0: Tue Jan  3 07:15:25 UTC 2012     root@obrian.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC
00:00:00.004 main     OS Service Pack: FreeBSD 9.0-RELEASE #0: Tue Jan  3 07:15:25 UTC 2012     root@obrian.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC
00:00:00.004 main     Executable: /usr/local/lib/virtualbox/vboxwebsrv
00:00:00.004 main     Process ID: 1219
00:00:00.004 main     Package type: BSD_32BITS_GENERIC (OSE)
Type Manifest File: /home/VBuser/.VirtualBox/xpti.dat
nsNativeComponentLoader: autoregistering begins.
nsNativeComponentLoader: autoregistering succeeded
nNCL: registering deferred (0)
00:00:01.236 SQPmp    Socket connection successful: host = localhost, port = 18083, master socket = 12
00:00:16.243 VBoxSVCWatcher VirtualBoxClient: detected unresponsive VBoxSVC (rc=NS_ERROR_CALL_FAILED)
00:00:16.243 VBoxSVCWatcher VBoxSVC became unavailable
WARNING: failed to send RELEASE event, file /usr/ports/emulators/virtualbox-ose/work/VirtualBox-4.1.10/src/libs/xpcom18a4/ipc/ipcd/extensions/dconnect/src/ipcDConnectService.cpp, line 2316
WARNING: failed to send RELEASE event, file /usr/ports/emulators/virtualbox-ose/work/VirtualBox-4.1.10/src/libs/xpcom18a4/ipc/ipcd/extensions/dconnect/src/ipcDConnectService.cpp, line 2316
И повторяется дальше. Куда копать не подскажете?

karmashkin, 2012-05-30 в 17:00:13

[root@TESTBSD /etc]# uname -m -r -s
FreeBSD 8.2-RELEASE-p6 i386

[root@testbsd /var/vm]# uname -m -r -s
FreeBSD 9.0-RELEASE-p1 i386

rc.conf
ifconfig_rl0="inet 10.0.0.182  netmask 255.255.255.0"
ifconfig_rl1="inet 91.196.98.251 netmask 255.255.255.248"

/etc/rc.firewall
${f} add 100 allow ip from any to any


with installed:
libvncserver 0.9.9
virtualbox-ose-kmod 4.1.16
virtualbox-ose 4.1.16 (with "VNC option" in # make config)
CODE: SELECT ALL   EXPAND VIEW
cd /usr/ports/net/libvncserver && make install clean
cd /usr/ports/emulators/virtualbox-ose-kmod && make install clean
cd /usr/ports/emulators/virtualbox-ose  && make install clean

CODE: SELECT ALL   EXPAND VIEW
# kldload vboxdrv
# /usr/local/etc/rc.d/vboxnet start

i start VM:
CODE: SELECT ALL   EXPAND VIEW
# VBoxHeadless -s "CentOS old" -n -m 5900 -o password

Oracle VM VirtualBox Headless Interface 4.1.16_OSE
(C) 2008-2012 Oracle Corporation
All rights reserved.

25/05/2012 11:11:30 Listening for VNC connections on TCP port 5900
Set framebuffer: buffer=29400000 w=800 h=600 bpp=32
Set framebuffer: buffer=2c100000 w=640 h=480 bpp=32
Set framebuffer: buffer=29600000 w=720 h=400 bpp=32
Set framebuffer: buffer=29400000 w=640 h=480 bpp=32
Set framebuffer: buffer=29400000 w=720 h=400 bpp=32


my VM boot & DHCP gives ip 10.0.0.183 all's OK(ping,SSH, etc)

but when I try to connect to HOST VNC (10.0.0.182:5900) i see this in host console:
(even just telnet 10.0.0.182 5900)

CODE: SELECT ALL   EXPAND VIEW
25/05/2012 11:11:30 Listening for VNC connections on TCP port 5900
Set framebuffer: buffer=29400000 w=800 h=600 bpp=32
Set framebuffer: buffer=2c100000 w=640 h=480 bpp=32
Set framebuffer: buffer=29600000 w=720 h=400 bpp=32
Set framebuffer: buffer=29400000 w=640 h=480 bpp=32
Set framebuffer: buffer=29400000 w=720 h=400 bpp=32
Segmentation fault: 11 (core dumped)


and VM is stop
Can you see where my mistake? thank you.

karmashkin, 2012-06-05 в 15:06:33

solved.
This error is related to ipv6 option in the kernel

alex117, 2012-06-07 в 15:50:10

че не сказали, что нужны исходники в /usr/src?
у меня ошибка вылетала при компиляции.

Хуй в пальто, 2012-06-07 в 17:04:52

кто-нибудь настроил это уебище на freebsd?
косяк на косяке, проще на ubuntu прикрутить.

McSeem, 2012-06-07 в 17:22:14

> alex117, 2012-06-07 в 15:50:10
> че не сказали, что нужны исходники в /usr/src?
> у меня ошибка вылетала при компиляции.

Да! и чо не сказали чо нужен комп?! я даже не знаю как скачать!

McSeem, 2012-06-07 в 17:26:34

> Хуй в пальто, 2012-06-07 в 17:04:52
> кто-нибудь настроил это уебище на freebsd?
> косяк на косяке, проще на ubuntu прикрутить.

наверное ещё проще в винде прикрутить, а ещё проще скопипастить со статей написаных несколько лет назад в инете и ваще не включать голову и удивляться \\\"а чо ничо не работает?\\\" it же стоит на месте последние 20 лет

karmashkin, 2012-06-07 в 18:02:44

ну раз уж все флудят, я поканючу)
а макось, в бокс, кто-нибудь ставил? поделитесь експортом машинки .ova
спасибо-пожалуйста

alex117, 2012-06-08 в 11:37:53

Чем пиздеть - лучше бы до ума довел статью, только время убил бестолку.

McSeem, 2012-06-08 в 11:55:08

> alex117, 2012-06-08 в 11:37:53
> Чем пиздеть - лучше бы до ума довел статью, только время > убил бестолку.
Чем пиздеть лучше прочитай доки и напиши статью,а эту удалим

McSeem, 2012-06-08 в 12:00:39

> karmashkin, 2012-06-07 в 18:02:44
> ну раз уж все флудят, я поканючу)
> а макось, в бокс, кто-нибудь ставил? поделитесь експортом > машинки .ova
> спасибо-пожалуйста
MAC не пробовал, но ReactOS не получилось поставить, хотя в винде без проблем

karmashkin, 2012-06-08 в 15:34:08

а опцию {start VM with VNC [x] port:____} к вебинтерфейсу не прикручивали?

Хуй в пальто, 2012-07-28 в 19:40:00

Поебень, три раза пробовал, три раза не завелось

Dimon, 2012-08-13 в 8:30:36

Статья конечно нуждается в обновление, но у меня всё работает. (главное самому не тупить).
Несколько советов:
1. Обновить порты перед установкой
При установки внимательно читать, что вам пишет порт, произвести все рекомендуемые действия.
2. Создать пользователя без косяков, добавить пользователей в группу operator и vboxuser, я добавил ещё и в wheel, чтоб не мучиться.
3. В config.php обязательно созданного прописать пользователя и пароль, пароль на вебморду admin admin
4. Не надо создавать каких либо скриптов, они автоматом создаются в /usr/local/etc/rc.d, если ознакомится с содержанием скриптов и всё правильно написать в rc.conf, то проблем не будет.
Мой rc.conf
vboxwebsrv_enable="YES"
vboxwebsrv_user="vbox"
vboxheadless_enable="YES"
vboxheadless_user="vbox"
vboxheadless_machines="free"
vboxheadless_free_name="FreeBSD_7.3"
vboxheadless_free_user="vbox"
vboxheadless_free_flags="-n -m 5903 -o 123"
При загрузки системы автоматом стартует виртуальная машина с vnc сервером, при выключение будет сохранено состояние машины.
С php.ini ничего делать не надо, надо лишь убедится что в /usr/local/etc/php/extensions.ini прописаны нужные модули, рекомендую сперва поставить apatch20, потом php5 (при установки необходимо отметить библеотеку апатча), далее ставим php5-
extensions, выбираем нужные модули, и конфигурим httpd.conf, стартуем апатч и всё.
КАК НАСТРОИТЬ И ЗАПУСТИТЬ МАШИНУ НОРМАЛЬНО
1. Сперва настраиваем машину через веб морду, пробуем запустить, если не запускается, читаем логи, (в той же папке, где создаётся машина, можно из под веб морды читать), Если машина запустилась, выключаем её, прописываем нужные параметры в rc.conf и выполняем скрипт запуска /usr/local/etc/rc.d/vboxheadless start
Всё, машина с vnc работает и в веб морде её состояние тоже отображается, дальше веб морда поможет нам монтировать и демонтировать ISO образы.
Очень клёвая штука, плохо что нельзя VNC порт прописать в настройке виртуальной машины
===========================================
PS Господа комментаторы, если б я прочитал ваши коменты, я б хер когда попытался поставить эту связку, но слава Богу я их не видел и пришлось самому разбираться, на месте автора я б подправил статейку совсем немного, ну или хотя бы написал необходимое условие для установки по данной статье, а именно: РУКИ ДОЛЖНЫ РАСТИ НЕ ИЗ ЖОПЫ.

McSeem, 2012-08-19 в 12:04:44

Благодарю Dimon. Что касается изменений,не буду их вносить, во первых когда писалась статья,данная связка нигде не была описана(ну или я не нашел описания в сети),да и она вышла только только. Во вторых люди не внимательно читают статью,ну вот даже из твоего коммента, ты пишешь:
"С php.ini ничего делать не надо.." я так понимаю это отнисится к моей фразе "И подконфигурировать php.ini. У вас может список будет другим, а может и вообще не возникнет проблем.", что подразумевает возможно не придется редактировать файл "php.ini". Я описал, что было у меня на хостинг машине,а там пхп стоял своеобразно настроенный,поэтому так получилось. Кто ставил по дефолту всё, может действительно ничего и не придется менять. Тупо делать всё по статье не вдумываясь и не читая, что выводится на консоль,ну не знаю, ещё называются админы...мне кажется все кто писал в комменты либо троли либо не админы, хотя и работают на должности админов. Рад, что у кого-то получилось, хотя уверен что по этой статье настроили многие просто не отписывали в комменты. Я например редко отписывал в коменты тем статьям,где у меня всё получилось, хотя очень благодарен авторам,а всё потому,что никогда не копипастил, читаешь, анализируешь и делаешь у себя со всеми поправками на свою инфраструктуру. Чюваки, думайте когда настраиваете серваки.

Нуп, 2012-11-08 в 21:17:56

Вы все лохи!!!!!!1111111
Фууууууууууууууу!!!!!!!!11111111

Dark, 2014-10-09 в 13:19:08

Спасибо за статью.

Задрот, 2015-09-04 в 10:15:09

Автор - полный уебан, статья кривая

Joker, 2016-02-18 в 4:33:32

Статья не кривая... просто это некропост уже неактуальный.



 

  Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
  Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

© lissyara 2006-10-24 08:47 MSK

Время генерации страницы 0.0472 секунд
Из них PHP: 27%; SQL: 73%; Число SQL-запросов: 88 шт.
Исходный размер: 90018; Сжатая: 16693