1С-Битрикс: Управление сайтомНа главную страницу
Клиентам
Маркетплейс
Партнерам
Разработчикам
Интеграция с 1С
Идея?


Личный кабинет
Авторизоваться
Регистрация
(войти) Корзина
Логин:

Пароль:



Забыли свой пароль?
Регистрация
Войти как пользователь:
Войти как пользователь
Вы можете войти на сайт, если вы зарегистрированы на одном из этих сервисов:
ВКонтакте
Мой Мир
Twitter
Facebook
Google
Livejournal
Яндекс
Rambler
Mail.Ru
Liveinternet
Blogger
OpenID
Используйте вашу учетную запись VKontakte.ru для входа на сайт.
Используйте вашу учетную запись Мой Мир@Mail.ru для входа на сайт.
Используйте вашу учетную запись на Twitter.com для входа на сайт.
Используйте вашу учетную запись на Facebook.com для входа на сайт.
Используйте вашу учетную запись Google для входа на сайт.
.livejournal.com
@yandex.ru
@rambler.ru
@mail.ru
http://www.liveinternet.ru/users/ /
.blogspot.com
OpenID:
  • Документация
    • Управление сайтом
    • Корпоративный портал
    • .NET Forge CMS
    • Отраслевые решения
    • Marketplace
    • Аренда приложений (SaaS)
  • Обучение и сертификация
    • Онлайн-курсы и сертификация
    • Учебные центры
    • Мое обучение
    • Учебные видеоролики
  • Центр поддержки
    • Поддержка
    • FAQ
    • Мои обращения
  • Сообщество
    • Блоги Битрикс
    • Блоги веб-разработчиков
    • Общие форумы
    • Веб-разработчики
      • Моя страница
      • Мои сообщения
      • Группы
      • Найти коллег
  • Cтатьи
    • Архив
Главная / Общение / Сообщество разработчиков / Ковалев Сергей / Блог
Федеральный семинар «1С-Битрикс»: Веб для бизнеса

Ковалев Сергей: Блог

Профиль
Друзья
Группы
Форум
Блог
Микроблог
  • Сейчас на сайте

Ковалев Сергей

Дата последнего входа: 21.05.2012 06:56:23
Наименование компании: it-in

Всемирный день IPv6 уже через месяц. Готовимся.

3
Ковалев Сергей
09.05.201100:3609.05.2011 00:36:43
Как все уже знают, Всемирный день IPv6 состоится 8 июня. (А кто не знает — сюда или сюда).

Мы не только собираемся поглазеть на это со стороны, но и основательно погонять Битрикс в боевых условиях, для чего в назначенный день включим IPv6 для всех наших сайтов и сайтов наших клиентов. Клиентам отправили письмо с подробным объяснением, что да как.

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

Сразу скажу, что IPv6 одной кнопкой не включается, пришлось проделать определенную работу, но в целом особых проблем у нас не возникло. Подготовили DNS, стэк приложений (кроме FTP), сеть. У кого работает IPv6, можете попробовать на http://v6.it-in.ru.

По результатам предварительного тестирования:
  • Связка nginx+Apache работает без проблем, если Apache слушает IPv4. Ну, а другого и не надо.
  • RPAF работает корректно, PHP тоже. Правильное значение IPv6-адреса доходит до Битрикса.
  • MySQL трогать незачем, пусть остается на IPv4, к нему подключаются через сокет или по внутренней сети. То же касается Memcached.
Ну, и Битрикс. Скажу так: пока работает все, кроме «Веб-аналитики» и «Проактивной защиты». Эти двое намертво заточена под IPv4, поэтому никаких стоп-листов или чего-то такого:




Однако хиты показываются правильно:



И определение страны/города, понятное дело, не работает, потому что базы под IPv4.

После 8 июня планирую опубликовать [более подробный] отчет по работоспособности Битрикса по IPv6 (ТП Битрикса — готовьтесь smile:)).

Буду признателен, если кто-нибудь поделится результатами относительно VMBitrix.
Ковалев Сергей
09.05.201100:3609.05.2011 00:36:43
Просмотров:1351 Комментариев:3 3
Теги: IPv6

Быстрая установка Битрикса из ISPmanager

0
Ковалев Сергей
12.12.201010:2112.12.2010 10:21:10
bitrixsetup.php позволяет нам быстро развернуть БУС или КП, но хочеться еще быстрее и удобнее smile:)

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





- Удобно пользователям (не надо ходить на эти ваши FTP).
- Удобно разработчикам, т.к. экономит время.

Поставить БУС или КП можно разными способами. Лично я выдернул установщик из виртуальной машины; в отличие от bitrixsetup.php в нем есть возможность быстрой установки (SHORT_INSTALL) и в комплекте идет сразу и restore.php:





При быстрой установке инсталлятор не спрашивает нас про базу и не травмирует проверками. Естественно, сервер вы уже подготовили под Битрикс smile:)





К делу.
  • Собираем свой инсталлятор или берем мой, архивируем в tar.gz или zip — получаем пакет, пригодный для ISPmanager.
  • Добавляем в webscripts.conf.local описание пакета. Не забудьте поставить md5 от своего пакета. Gist.
  • В /usr/local/ispmgr/www/webscripts добавляем Bitrix.sh, он будет распаковывать пакет и менять параметры доступа к БД в dbconn.php. Обратите внимание, имя скрипта должно совпадать с именем пакета из webscripts.conf.local. Не забудьте дать права на исполнение этого файла пользователям. Gist.
  • PROFIT!
Ковалев Сергей
12.12.201010:2112.12.2010 10:21:10
Просмотров:1919 Комментариев:2 0
Теги: ISPmanager

MetaWeblog в реализации 1С-Битрикс

0
Ковалев Сергей
16.01.201009:4316.01.2010 09:43:21
Обрадовшись, что наконец-то появилась возможность публиковать в блог через MetaWeblog, которую я предлагал еще в августе, я всю ночь провозился с этим компонентом.

Что надо помнить:

1. В комплексном компоненте должна быть выбрана группа блогов (или несколько), иначе не работает.

2. В настройках модуля HTML-редактор должен быть включен, иначе все ваши тэги будут заменены на HTML-эквиваленты. Сам HTML-редактор, кстати, не появляется при создании записи через веб-интерфейс. Более того, если запись опубликовать через какой-нибудь Live Writer, то потом ее через веб-интерфейс проблематично редактировать.

3. При публикации записи происходит самый настоящий логин пользователя с вызовом OnAfterUserLogin и всего такого. Так что если у Вас на авторизацию пользователя навешана хитрая логика (например, с редиректом), про MetaWeblog придется пока забыть.

4. Тэги/категории можно использовать существующие, но нельзя добавить новые. Полагаю, ограничение MetaWeblog.

5. Cамое обидное: спецификация реализована не полностью. Изображения и видео не загружаются. Хотя Live Writer подает смешанные сигналы. В возможностях (capabilities) блога показывает "File Upload - Yes", а при публикации говорит, что "blog doesn't support picture publishing". Кому надо картинок, будет загружать через FTP. Грустно. Кстати, если кто подскажет хороший "бложный" клиент с поддержкой SFTP, буду признателен.

6. Пути в клиентах все время куда-то съезжают. Например, мне так и не удалось переубедить Live Writer, что мой блог находится по адресу http://www.it-in.ru/blog/it-in/, а не http://www.it-in.ru/it-in/. ScribeFire и вовсе в браузере открывает только it-in.

7. Виртуальную лабораторию вообще ничего запостить не получилось.

Резюме: все по плану, лишь бы загрузку изображений сделали.
Ковалев Сергей
16.01.201009:4316.01.2010 09:43:21
Просмотров:949 Комментариев:2 0
Теги: танцы с бубном, блог, MetaWeblog

Автокэширование: иногда лучше выключить

0
Ковалев Сергей
22.11.200917:4222.11.2009 17:42:07
Столкнулся с редкой ситуацией у клиента. С автокэшированием Битрикс работает медленнее, чем без него. Тарифный план - специальный под Битрикс.

C включенным автокэшированием:



С выключенным автокэшированием:



Очевидно, дело в слишком медленном диске, показатели в десяток раз хуже, чем у эталона. Кэш eAccelerator'а забит до отказа, так что еще вопрос, насколько акселератор помогает вообще.
Ковалев Сергей
22.11.200917:4222.11.2009 17:42:07
Просмотров:2429 Комментариев:11 0

Тестирование Windows Cache Extension for PHP (aka WinCache)

1
Ковалев Сергей
12.10.200902:4412.10.2009 02:44:11
Я обещал тест. С другими акселераторами не сравнивал, сравнивал лишь IIS+PHP и IIS+PHP+WinCache.

Вводные данные:
  • 1С-Битрикс: Управление сайтом 8.5.1 "Бизнес", свежий, демо-сайт
  • Windows Server 2008 Web, IIS 7, x86
  • Виртуалка 2 х 2Ггц, 800 Мб RAM
  • PHP 5.2.11
  • MySQL 5.1.37

Тестирование:
Apache JMeter, 5 конкурентных пользователей, три десятка страниц с демо-сайта, 20 секунд на прогрев. Все тесты проводил после перезапуска IIS и MySQL.

Результаты:
Оценка производительности из "Монитора производительности" увеличилась с 3.37 до 13.12. Количество обрабатываемых в секунду запросов увеличилось с 3.9 до 11.4 (не айс, но это ж виртуалка smile:)).

Было:




Стало:




В общем, акселератор удался. Сразу скажу, что через Web Installer WinCache не встал, пришлось руками прикручивать. Субъективно с WinCache сайт стал просто летать. Возникло ощущение, что уже Firefox не успевает страницы открывать smile:)
Ковалев Сергей
12.10.200902:4412.10.2009 02:44:11
Просмотров:3775 Комментариев:7 1
Теги: Windows, cache, PHP, WinCache, акселератор, IIS

Microsoft против PHP: конец войне?

0
Ковалев Сергей
09.10.200921:0209.10.2009 21:02:30
С некоторых пор вижу изменение отношения MS к PHP. Раньше MS всячески пыталась перевести разработчиков с PHP на .NET. Писали целые мануалы по переводу решений на .NET. В целом не получилось.

Теперь, видимо, концепцию поменяли. С PHP уже не воюют, а делают все возможное, чтобы PHP выполняли на платформе Windows:
  • ввели своих разработчиков в команду PHP;
  • дописали FastCGI к IIS;
  • исписали весь asp.net и iis.net инструкциями по подключению PHP, записали ролики;
  • теперь еще и PHP-акселератор для IIS выпустили.

Сработал принцип: "Если не можешь управлять процессом, ты должен его возглавить" smile:)
Ковалев Сергей
09.10.200921:0209.10.2009 21:02:30
Просмотров:1109 Комментариев:8 0
Теги: Microsoft, PHP, IIS, ASP.NET

Панель управления на сайте самого Битрикса

0
Ковалев Сергей
06.10.200919:0706.10.2009 19:07:17
Нежданно-негаданно у меня появилась панель при заходе на dev.1c-bitrix.ru smile:D Очевидно, новые модули разработчики тестируют на самих себе smile:)




Ковалев Сергей
06.10.200919:0706.10.2009 19:07:17
Просмотров:1352 Комментариев:7 0

Windows Cache Extension for PHP

0
Ковалев Сергей
05.09.200914:5105.09.2009 14:51:37
Сбылась мечта идиота. До сих пор для меня единственным аргументом в пользу НЕиспользования PHP под IIS было отсутствие там PHP-акселератора. Но Microsoft в последние два года так налег на поддержку PHP, что теперь появился и акселератор:
Windows Cache Extension for PHP

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

Пока бета. О результатах тестирования отпишу.
Ковалев Сергей
05.09.200914:5105.09.2009 14:51:37
Просмотров:2009 Комментариев:3 0
Теги: IIS, PHP, cache

.NET: экспорт RSS из блогов

0
Ковалев Сергей
13.07.200919:1213.07.2009 19:12:02
Пока Битрикс делает RSS-экспорт для блогов, я решил по быстрому наваять свое решение. Quick and dirty, но в качестве альтернативного решения сойдет.



Для ленивых:
качаем, меняем feed.ashx под себя и добавляем в шаблон:
Код
<html>
<head>
<link rel="alternate" type="application/rss+xml" title="описание_Вашего_фида" href="http://путь_к_сайту/feed.ashx">
</head>
</html>


Для любознательных:
Берем упрощенную XSD-схему RSS 2.0, с помощью xsd.exe из Windows SDK генерируем себе C#-класс с фидом. Делаем handler, прописываем правильные HTTP-заголовки, заполняем фид нужными постами, затем делаем сериализацию в XML.
Ковалев Сергей
13.07.200919:1213.07.2009 19:12:02
Просмотров:1161 Комментариев:3 0
Теги: .NET, блог, RSS

.NET: как обрезать пост под катом

1
Ковалев Сергей
11.07.200922:2011.07.2009 22:20:50
Обнаружил, что при создании записи в блоге можно поставить cut, но компоненты его не используют. В итоге в списке постов выводятся полные посты, а не обрезаются.

Игра с Component.Processor.EnableCut и Component.Processor.HideCut ни к чему не привела, а в документации блоги и вовсе не описаны. В результате подправил шаблон руками, и получилось следующее:

http://cdn.cloudfiles.mosso.com/c135881/blogpostcut.png

Код
<%@ Reference VirtualPath="~/bitrix/components/bitrix/blog.post.list/component.ascx" %>
<%@ Control Language="C#" Inherits="Bitrix.Blog.Components.BlogPostListTemplate" EnableViewState="false" %>
<%@ Import Namespace="Bitrix.Blog" %>
<%@ Import Namespace="Bitrix.Blog.Components" %>
<%@ Import Namespace="System.Collections.Generic" %>

<%   if (Component.FatalError != BlogPostListComponent.ErrorCode.None) { %>
   <%= Component.GetErrorHtml(Component.FatalError) %>
<%
   return;
}
else if (Component.Posts.Count < 1)
{
   return;
} 
%>

<div class="blog-list">
   <div class="blog-list-pager">
      <bx:IncludeComponent runat="server" ID="HeaderPager" ComponentName="bitrix:system.pager" Template="<%$ Parameters:PagingTemplate %>"/>
   </div><br />

<%
   BlogPostListComponent.PostInfo post = null;
   int cutNum = 0;
   
   Component.RenderHideCut += delegate(object sender, BXBlogCutTagEventArgs e)
   {
      cutNum++;
      string title = !Bitrix.Services.Text.BXStringUtility.IsNullOrTrimEmpty(e.Option) ? e.Option.Trim() : "Подробнее...";
        e.Writer.Write(String.Concat(@"<br /><a href=""", post.PostViewHref, "#cut", cutNum, @""">", Encode(title), "</a>"));
        //вставляем метку, по которой будем замем обрезать html-содержимое
       e.Writer.Write("=== cut ===");
   };         
   for(int i = 0; i < Component.Posts.Count; i++)
   {
      cutNum = 0;
      post = Component.Posts[i];
        //если есть метка для обрезки, удаляем хвост
       string htmlContent = post.GetContentHtml();
        if (htmlContent.IndexOf("=== cut ===")>0)
            htmlContent = htmlContent.Remove(htmlContent.IndexOf("=== cut ==="));
%>   
   <div class="blog-item">
      <span class="blog-date-time"><%= post.Post.DatePublished.ToString("d") %></span>
      <a href="<%= post.PostViewHref %>"><b><%= post.TitleHtml %></b></a><br />
      <%= htmlContent %>
      <br clear="all" />
   </div>
<%
   } 
%>
   <div class="blog-list-pager">
      <bx:IncludeComponent runat="server" ID="FooterPager" ComponentName="bitrix:system.pager" Template="<%$ Parameters:PagingTemplate %>"/>
   </div>
</div>




Ковалев Сергей
11.07.200922:2011.07.2009 22:20:50
Просмотров:1894 Комментариев:5 1
Теги: .NET, блог, пост

Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».
 
Технологии Эрмитаж
BitrixMobile
Автокеширование
SiteUpdate
Производительность Виртуальная машина
Веб-окружение
Результаты тестов
Выбрать хостинг
Веб-кластер
Безопасность Проактивная защита
Веб-антивирус
Аутентификация

Контакты Поиск Карта сайта
Телефон: +7 (495) 229-14-41
Оставайтесь с нами: Facebook Twitter Habrahabr VKontakte Developers Google 1+
Как распознать QR код?Контакты QR


© 2001-2012 «Битрикс», «1С-Битрикс». Работает на 1С-Битрикс: Управление сайтом.
Английская версия Немецкая версия