среда, 3 апреля 2013 г.

Ленивые, криворукие ##ланы

Что бывает, когда бизнесом пытаются заниматься ленивые, криворукие ##ланы? Вот примерно так и получается:

OpenCart - категория не найдена

Эти люди отхватили отличный домен. Эти люди добились, чтоб их включили в официальный список партнеров OpenCart, а заметим, что они единственные кто туда вошли, хотя есть и другие, более серьезные русскоязычные ресурсы. Это значит, что к ним идут практически готовые клиенты, целевые дальше некуда, которых можно нужно облизать с головы до ног и продать им готовый магазин, сервис, хостинг, консультации, рекламу… и что мы видим? У них не доходят руки чтобы вылизать собственные яйца свой собственный сайт. Я заходил к ним З месяца назад… с тех пор они не удосужились привести в порядок раздел с документацией, а ссылка купить ведет в никуда.

Видимо пипл и так хавает. Нет достойной конкуренции?

вторник, 1 января 2013 г.

Шаблоны в OpenCart

OpenCart построен на основе концепции MVC, но я бы ее переименовал в MTC, поскольку вид в опенкартовской реализации этой концепции – сущность совершенно пассивная. Это шаблон, который тупо заполняется данными сформированными контроллером. Даже расширение используется “tpl” как сокращение от template. Хотя по сути это обычный php. А внутри куча “echo $variable” в перемешку с HTML и JavaScript. Последний, к слову сказать, не грех бы отделить.

Насколько логична и интуитивно понятна программная реализация OpenCart, настолько же мозголомной является часть относящаяся к дизайну. Т.е. если в других CMS вы можете сварганить на чистом HTML “рыбу”, а затем вставить в нее куски кода, то здесь вам придется эту рыбу выпотрошить и раздербанить на кучу мелких шаблончиков. А чтобы понять из каких кусочков собирается конкретная страница – придется смотреть  не только на ее “маршрут”, но и заглянуть в код контроллера, который за этот маршрут отвечает и код его “детишек”. А может быть еще и в админскую часть магазина (некоторые модули имеют в настройках имя используемого шаблона).

Мысль: для упрощения работы по скрещиванию дизайна с магазином, дизайн нужно делать в виде набора SHTML файлов совпадающего по своей структуре с набором шаблонов. Т.е. обязательное требование к дизайнеру/верстальщику – наличие элементарных знаний SSI. Ну и естественно необходимо начать с описания этой самой структуры.

понедельник, 31 декабря 2012 г.

Установка Debian. Продолжение

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

su
apt-get install mc

Жить стало чуть легче. Теперь у нас на очереди



  1. Установить и настроить MySQL

  2. Установить PHP и разные приблуды к нему

  3. Установить и настроить веб-сервер Apache или ngnix

  4. Настроить доступ через FTP и SSH

Обычно я пользовал XAMPP, который уже включает в себя все необходимое. Но коль скоро я хочу получить максимальное приближение к реальному хостингу, то это решение не подходит. Для полного счастья хотелось бы еще, например, ISPManager или cPanel, но эти продукты проприетарные и просто для попробовать не подходят. Из свободного ПО остановил свой выбор на ISPConfig, в связи с чем вышеприведенный список необходимо скорректировать.


Инструкции по установке ISPConfig позаимствованы тут.


apt-get install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-authlib-mysql courier-pop courier-pop-ssl courier-imap courier-imap-ssl libsasl2-2 libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl maildrop getmail4 rkhunter binutils


Настройка Postfix


Настройка Postfix


Настройка Postfix


Настройка mysql-server


Настройка courier-base


Настройка courier-ssl


apt-get install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl


 


apt-get install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp


Настройка PhpMyAdmin


Настройка PhpMyAdmin


Пароль для PhpMyAdmin


Пароль для PhpMyAdmin


Включаем апачевские модули:


a2enmod suexec rewrite ssl actions include


Устанавливаем PureFTPd и Quota


apt-get install pure-ftpd-common pure-ftpd-mysql quota quotatool


 


Уфф… что меня это задрало уже, на часах 20:00 31 декабря, пора заняться другими делами.


На посошок: команда ip addr show вместе с кучей другого мусора выдала ip-адрес, назначенный моей виртуальной машине через DHCP вай-фай роутером. 192.168.0.86. Ввожу это значение в адресной строке браузера на основной машине и получаю:



It works!


This is the default web page for this server.

The web server software is running but no content has been added, yet.


Значит апач поднялся и работает, основная машина видит виртуальную, осталось немного допилить. Нужно еще подумать так ли мне нужен ISPConfig, поскольку в списке требований для его установке еще много всякой всячины.

Установка Debian на VirtualBox

Автозахват клавиатуры

Предупреждение о цветах

Поехали

Приступаем к установке

Выбор языка установки

Хочется оторвать кому-то руки… В VirtualBox предусмотрена возможность делать снимки экрана виртуальной машины, но от чего-то в этот момент клавиатура остается привязанной к этой самой машине, в то время как мышь освобождается. В результате изменить имя файла, в который записывается скриншот становится невозможным. Опен соурс, мать его так, предполагается что я вот прям сейчас скачаю исходники и поправлю как мне надо. Или напишу в баг-трекер и когда-нибудь, кто-нибудь, может быть…

Выход найден – нужно заранее где-то ввести название файла, скопировать его, а затем делать снимок экрана и пользуясь только мышой через контекстное меню его вставить. Юзабилити, это наше все :)

Выбор страны

Выбор раскладки клавиатуры

Имя компьютера

Имя домена (фиолетово)

Учетная запись root

Учетная запись root - и еще раз

Учетная запись пользователя

Учетная запись пользователя

Учетная запись пользователя - пароль

Учетная запись пользователя, опять пароль

Если вы не являетесь опытным пользователем Linux, то положитесь на автоматику и рекомендованные варианты.

Разметка диска

Разметка диска

Разметка диска

Разметка диска

Форматируем диск

Переключение клавиатуры

Одного диска хватит

Я скачал только первый CD из, кажется, 37 штук. И советую поступить также, если конечно вы не поедете устанавливать Linux куда-то в глухую деревню без интернета. После двухлетнего опыта использования этой ОС я твердо уверен – без наличия широкополосного безлимитного доступа к инету обычному пользователю с линуксом делать нечего. Если вы скачали и поставили все 37 дисков с дебианом, то сразу после установки он найдет обновлений еще на столько же. И еще столько же будет выкачивать каждый месяц.

Настройка менеджера пакетов

Ну вот я как раз об этом. И отказываться не хорошо, обновления они же не просто так появляются… и соглашаться плохо – после очередного обновления система запросто может перестать работать полностью или частично.

Настройка менеджера пакетов

Выбор зеркала

Ввиду активизации борьбы с интернетом, скоро всем нам придется в качестве прокси использовать сервер ФСБ. Удивительно, как они еще не додумались? Это же очевиднейшее решение, которое позволит контролировать кто, куда и зачем лазит. Уверен, что и государственная дура дума, и совет федерации, и весь наш народ горячо поддержит это решение.

Настройка прокси

Теперь можно сходить покурить, а некурящим выпить чаю.

Установка

А когда вернетесь, обнаружите что все остановилось и ждет вашего участия. Расслабляться рано.

Ну его нафиг

Мы не ищем легких путей. Ограничимся установкой стандартных системных утилит, нас не нужны красивые рюшечки и шашечки, хостер ведь их нам не предоставит? Ну вот и нефиг привыкать. От установки веб-сервера и сервера баз данных тоже пока воздержимся. Во первых надо еще подумать, какой веб сервер мы будем использовать и большой вопрос что подразумевается под сервером SQL – их существует несколько больше чем один.

Выбор ПО

Установка загрузчика

Вот и все

Приехали, установка завершена

Перезагружаемся:

Первый вход

И наслаждаемся

И вот оно счастье

Надеюсь вы помните свое имя пользователя и пароль. Конградулейшн, вы счастливый обладатель (пока еще) бесполезного сервера!

воскресенье, 30 декабря 2012 г.

VirtualBox: Создаем виртуальную машину

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

  1. ставь тот что знаешь
  2. если не знаешь ставь тот что знает твой друг
  3. если нет друзей… ну и так далее

Тут не подходят. Делаем проще – выбираем хостинг, выясняем какой дистрибутив используется там и ставим его. Я буду ставить Debian.

1. Запускаем VirtualBox, жмем “Создать”

Менеджер виртуальных машин

2. Выбираем тип ОС

Создать виртуальную машину

3. Задаем объем памяти. Для начала лучше задать побольше, но по возможности. У меня ее 8 гиг, выделить один из них под виртуальную машину не жалко

Объем памяти виртуальнйо машины

4. Создаем виртуальный жесткий диск

Создаем виртуальный жесткий диск

Их оказывается дохрена всяких разных. Но нам это пофигу, годится вариант по умолчанию

Тип виртуального диска

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

Динамический виртуальный диск

20 Гигов должно хватить за глаза и за уши

20 Гб хватит

5. Вуаля

Виртуальная машина создана

Тюнинг

1. Убираем дискету из загрузки

Дискеты - must die!

2. В качестве типа сети выбираем сетевой мост

image

3. Подключаем общие папки

VirtualBox - общие папки

4. Подключаем образ диска для установки

VirtualBox - подключение образа диска для установки ОС

Мы готовы к первому запуску