О чём это?

Snippet — небольшой фрагмент програмного кода, иллюстрирующий решение конкретной задачи, пригодный для повторного использования. Большинство из 68 статей на этом сайте посвящено вопросам веб-программирования и администрирования веб-серверов.

Disclaimer. Статьи отражают личное мнение, взгляды и подходы авторов, а также могут содержать ошибки и неточности, но мы очень-очень стараемся :)

Перенос кода Global.asax в папку App_Code

14.02.2010 23:37 / Артём Волк / 32 просмотра

При использовании модели ASP.NET приложения Web Site Project удобно хранить весь C#-код (кроме code-behind) в папке App_Code. Генерируемый же по умолчанию файл Global.asax помещается в корень сайта и содержит C# код.

читать далее...

Установка OpenWebmail на сервер с Debian и ISPManager

07.02.2010 20:17 / Артём Волк / 53 просмотра

По умолчанию в ISPManager в качестве webmail'a использует SquirellMail. Для установки OpenWebmail использовался deb-пакет.

читать дальше...

Аудит входа и выхода пользователей в ASP.NET 2.0 приложении при использовании Forms Authentication

07.02.2010 20:15 / Артём Волк / 57 просмотров

Возникла необходимость к существующему приложению на ASP.NET 2.0, которое использует Forms Authentication добавить регистрацию входа (login) и выхода (logout) пользователей.

читать дальше...

Генерация не-HTML контента в ASP.NET MVC

18.01.2010 23:04 / Артём Волк / 82 просмотра

Иногда бывает нужно сгенерировать контент с Content-Type отличным от text/html, например, RSS-ленту или JavaScript-информер. В случае использования WebForms или ASP.NET MVC с WebForms View Engine проблема решается следующим образом:

<%@ Page ContentType="application/x-javascript" Language="C#" Inherits="..." %>

или, например:

<%@ Page ContentType="application/rss+xml" Language="C#" Inherits="..." %>

P.S. Для RSS конечно правильнее будет использовать встроенные средства .NET Framework'a, но, например, если нужно добавить нестандартные теги, возможно, решение с шаблоном будет удобнее.

Установка ISPManager на сервер за роутером (с локальным IP-адресом)

18.01.2010 23:03 / Артём Волк / 49 просмотров

Для установки и работы системы лицензирования ISPManager необходимо, чтобы хотя бы на одном из сетевых интерфейсов (лучше на первом в выводе ifconfig) был определён (опять же, лучше первым по счёту) реальный IP-адрес, на который выдана лицензия.

В случае, если сервер находится за роутером и на его интерфейсах — только локальные IP, реальные же определены на роутере и с него прокидываются на сервер для корректной установки достаточно будет прописать алиасом лицензируемый IP на первом интерфейсе. Этот адрес, естественно, использоваться не будет, но ISPManager будет доволен :)

Способ опробован для установки легально приобретённой копии ISPManager на выделенный сервер.

Отладка и статистика запросов в PHP PDO

09.01.2010 12:38 / Артём Волк / 150 просмотров

PDO часто используется в качестве низкоуровневой библиотеки доступа к данным, один из примеров — библиотека Outlet ORM. В прекрасной библиотеке доступа к данным DbSimple есть удобные возможности по записи кода исполняемых SQL-запросов в лог и встроенные средства по подсчёту их количества и времени выполнения. Всего этого в PDO по умолчанию нет.

Решение нашлось совершенно случайно, спасибо Alvaro Carrasco, одному из авторов Outlet ORM за подсказку. Способ заключается в создании собственных наследников от классов PDO и PDOStatement, подобное давно реализовано для Propel'a. Уже пытаясь сделать это самостоятельно я так и не нашел способа подменить класс для создания экземпляров PDOStatement, делается это действительно нетривиально :).

концепт решения без привязки к Propel

Новогодний Smarty-модификатор

02.01.2010 19:05 / Артём Волк / 76 просмотров

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

  • Если год создания сайта совпадает с текущим, то отображается только год, например «2007»
  • Если год создания сайта отличается на единицу от текущего, то выводится что-то наподобие «2007, 2008»
  • Если сайт создавался больше года назад, то получится такая строка: «2007—2009»

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

смотреть код...

Привязка нижнего блока к низу макета страницы

14.12.2009 17:46 / Сергей Дяговченко / 177 просмотров

Как "прилепить" нижний блок книзу? Google и другие поисковики дают много ссылок на различные решения данной проблемы. По ряду причин, большинство из предлагаемых решений уже не работают, либо работают, но без поддержки кроссбраузерности. На данный момент удалось найти такое кроссбраузерное решение, речь о котором и пойдет далее...

читаем...

Первые tips & tricks для Smarty 3

13.12.2009 12:19 / Артём Волк / 192 просмотра

Новая версия Smarty 3, находящаяся сейчас в стадии бета-тестирования содержит много нововведений. Наиболее заметные из этих новинок — наследование шаблонов (template inheritance) и поддержка определения функций в шаблонах (template functions).

читать дальше

Небольшой скрипт для работы с портами во FreeBSD

04.12.2009 17:16 / Артём Волк / 107 просмотров

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

ещё один вариант


Страница 1 из 7