IT-Expert
  IT-Expert / Веблог / Ключевые слова / Parser
Авторизация
Логин:
Пароль:


 
Поиск по записям:

Ключевые слова:
Записей в блоге
 за 2023 год
 за 2022 год
 за 2021 год
 за 2015 год
 за 2014 год
 за 2013 год
 за 2012 год
 за 2011 год

     за 2010 год

       за 2009 год
       за 2008 год
       за 2007 год
       за 2006 год
       за 2005 год
      RSS лента Лента новостей IT-Expert 
      входит в:
      Web Development

      Parser

      включает:
      MySQL

      Про Parser3 в 2024 году и утраченные технологии

      15:37, 25 декабря 2023 ( )

      Знаете ли вы про интересный феномен утраченных технологий?

      Так, например, отправить на луну космический аппарат сейчас невозможно, хотя еще в конце 60х это успешно сделали американцы. Всему виной проблема устаревания и передачи технологий следующим поколениям. Так называемый legacy.

      Подумайте, сможете ли вы запустить ваш сайт на React 17 и NodeJS 20 через 10 лет, если обратная совместимость не будет в приоритете, а ни одной вам так нужной зависимости вы не сможете скачать?

      Вот так и мой опыт с этим сайтом. Он был написан в 2005 году на коленке на вполне маргинальной технологии Parser3 от студии Лебедева. В то время еще не придумали докеризацию и самым популярным браузером был Apache 2.

      С тех пор много воды утекло, Apache 2 все также можно установить, Parser3 появился в Debian пакетах. MySQL теперь версии 8, пятерка уже не поддерживается.

      Пришлось также закрыть страницы регистрации и отправки пароля, что бы закрыть источник взломов. 

      Потратил полтора дня чтобы докеризировать все это дело и инициализировать строку подключения к базе данных. Заодно настроил CI/CD в Drone и деплоймент в собственный кластер Hashicorp Nomad на Хетцнере.  Однако, результатом доволен.

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

       

       

      Решаем проблему form-post-spam

      12:42, 19 октября 2007 ( )

      Bit пишет:

      В последнее время начал замечать следующую проблему:на сайте возникают ошибки из-за заполнения форм непредусмотренными данными. Например в поле со смещением страницы помещают www.viagra.com и т.п.причем спамом заполняются все доступные поля формы на странице + возможные параметры в адресе!
      Видимо ставка таких form-spam-ботов на то, что хоть какие-нибудь данные занесутся в базу, и будут в дальнейшем отображаться на атакуемом сайте! Тем самым поднимая релевантность для поисковиков раскручиваемого ресурса.
      Весьма массовый характер такого спама действительно может иметь большой успех.
      Благо что бороться с подобными вещами довольно просто: достаточно иметь систему тестов переменных на нужный тип. На своих сайтах я поставил такую защиту, и при несоответствии типа переменной в поле формы отображается пустой экран. Тем самым существенно снижается нагрузка сервера вышеуказанными спам-ботами.

       

      Проблемы с компиляцией Parser3 на FreeBSD

      17:11, 11 мая 2006 ( )

      На хостинге colocall.net, который ранее считал одним из лучших по сервису в Украине произошло плановое обновление версий OS и MySql, вследствие чего и перестали работать неск-ко проектов. Компилировать пришлось на своей FreeBSD 6.0 в VMWare, т.к. дисковая квота не позволяла компилить в полный рост, да и штатная, казалось бы, утилита wget оказалась для провайдера непозволительной роскошью.

      В итоге что-то начало работать, т.е. все, кроме библиотек mysql, которые выпабали с невразумительным сообщением

      can't open the module 
      sqldriversdir/libparser3mysql.so

      После пары часов попыток компиляции и продолжительного гугления был найден сей пост:

      ----------------------- 

      Помог ключик --with-dynamic-stdcpp при конфигурировании парсера. Проблема, как оказалось, была именно в нем, а не в драйвере mysql. Теперь все заработало. При этом ldd libparser3mysql.so по-прежнему ничего не выводит. Видимо, это нормально для FreeBSD.

      Проверяю ... спасибо людям, которые не ленятся документировать сделанное и общаться на форумах. 

      Получилось, кому надо Parser3 под FreeBSD 6 выкладываю:

      http://it-expert.com.ua/download/parser3_mysql_freebsd_6.tar.gz ## (с библиотеками mysql)
      http://it-expert.com.ua/download/parser3mysql_freebsd_6.tar.gz  (только библиотека parser3mysql.so)
      http://it-expert.com.ua/download/parser3-xml-nomysqllib-freebsd6.tar.gz (parser3 без библиотек mysql)

       

      ---
      OFFTOP:
      попал в офигенную пробку утром, больше часа ехал 500 метров, как выяснилось потом в аварию, которая тормозила весь поток, попала моя бывшая сотрудница. Руки-ноги на месте, и слава богу.

       

      Не фича при использовании format-number

      12:17, 13 января 2006 ( )

      Частенько приходится отображать числа в денежном формате, так вот, format-number честно откусывает нули в дробной части, если мы пользуем конструкцию вроде этой:

      <xsl:value-of select="format-number(@cost, '###,###,###.##')"/>

      Поэтму делаем форматирование средствами языка, и не мучаем xslt.

       

      Вышел новый релиз Parser 3, на котором написан этот сайт

      09:53, 13 декабря 2005 ( )

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

      @GET_имя[]
      код, выдает значение

      @SET_имя[value]
      код, обрабатывает новое $value

      так что теперь parser стал еще быстрее и эффективнее.

      Для чего же нужны properties ?

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

      Рекурсивный обход каталогов на Parser3

      13:04, 30 октября 2005 ( )

      Пример рекурсивного обхода каталогов на Parser3 

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

      Генерируем пароли

      10:17, 8 сентября 2005 ( )

      http://parser2.parser.ru/examples/example4.html

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

       

      Пакеты Apache, MySQL, Perl, PHP в одном флаконе для разработчика

      11:50, 15 августа 2005 ( )
      Денвер, считаю лучшим, из фич: автопрописывание в хостах и в конфигурации Апача новых сайтов.
      http://www.denwer.ru/dis/Base_Parser/


      еще один:
      Apache Swiss Knife, содержит САМЫЙ удобный mysql клиент: MySQL Front 2.5. Весьма удобная панель для
      http://swiss-knife.sourceforge.net/
      требует ручных правок для подключения новых сайтов.
       

      Многоязычные сайты, XML и XSLT

      13:47, 20 июня 2005 ( )

      функция lang

      Luzhnikovskiy | konst@design.ru 10.01.2003 17:48

      1. есть аттрибут, именумый xml:lang
      2. есть функция lang(), которая дает true/false в зависимости от того, совпадает ли ее аргумент со значением xml:lang данной ноды.
      3. как отмечено выше - можно передать параметр

      Имеем:
      <caption>
      <content xml:lang="ru">Заголовок</content>
      <content xml:lang="en">Title</content>
      </caption>
      Тогда просто трансформим по параметру:
      <xsl:apply-templates select="content[lang($langParam)]" />
      ну или типа того...

       

      Типичный .htaccess для моих сайтов

      12:13, 28 апреля 2005 ( )

      # Подключение Parser-а для всех .html-страниц
      AddHandler parsed-html html
      Action parsed-html /cgi-bin/parser3.cgi

      RewriteEngine on

      ## Русская версия
      RewriteCond %{REQUEST_URI} ^/eng/
      RewriteRule ^eng/(.*) $1&lang=eng [PT]


      ## Английская версия
      RewriteCond %{REQUEST_URI} ^/ukr/
      RewriteRule ^ukr/(.*) $1&lang=ukr [PT]

      ## обрезка html
      #RewriteCond %{REQUEST_URI} \.html
      #RewriteRule (.*)/(.*)\.html(.*) /$1$3&method=$2 [PT]

      RewriteCond %{REQUEST_URI} \.html
      RewriteCond %{REQUEST_URI} !^/nbs
      RewriteCond %{REQUEST_URI} !^/jscript
      RewriteCond %{REQUEST_URI} /admin/
      RewriteRule (.*)/(.*)\.html(.*) /$1$3&method=$2 [PT]


      RewriteCond %{REQUEST_URI} ^/admin/
      RewriteCond %{REQUEST_URI} !/jscript
      RewriteCond %{REQUEST_FILENAME} !\.(gif|jpg|jpeg|png|css|js|cgi)$ [NC]
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteRule ^admin/(.*) adm.html?uri=/$1 [QSA,L]


      RewriteCond %{REQUEST_FILENAME} !\.(gif|jpg|jpeg|png|css|js|cgi)$ [NC]
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteCond %{REQUEST_FILENAME} !-f

      RewriteRule ^(.*)$ index.html?uri=/$1 [QSA,L]

      DirectoryIndex index.html

      <files "adm.html">
       AuthType Basic
       AuthName "Alex Admin"
       AuthUserFile "/home/kyivpatr/.htpasswds/passwd"
       require valid-user
      </files>

       
      страницы:
       1 
      2
      © Максим Прокопов 2005-2024 О сервере