• С помощью чего можно создать образ для виртуальной машины с живого сервера?

    Ernillew
    @Ernillew
    Администрирую *nix-системы с 1997 года
    tar cjfp - на изначальной машине
    tar xjfp - на виртуалке куда копируете
    дальше mount proc, dev, sys и chroot в развернутую систему, установка граба и загрузка.

    google:// gentoo stage4 и дальше по образу и подобию.
    Ответ написан
    4 комментария
  • Как убрать повторяющиеся слэши в .htaccess?

    @AlexBurma
    Попробуй это:

    RewriteCond %{THE_REQUEST} ([^\s]*)\/{2,}(\?[^\s]*)?
    RewriteRule (.*) %1 [R=301,L]
    Ответ написан
    1 комментарий
  • Способен ли Opencart тянуть серьезные интернет магазины с 1C? Существуют ли примеры таких магазинов?

    @akorvat
    >>> Возникнут трудности у тех, кто привык работать с 1С, кому неоходим импорт/экспорт товаров xml и сотрудничество с яндекс маркетом
    Да трудности колоссальные :) Модуль Яндекс Маркета идет в комплекте сразу в русской сборке :) Там же сразу карта сайта XML. Бери и юзай. Хочешь серьезней, с настройками, стоит аж 500-700 рублей - для всех версий есть расширения :) Ставится без замены файлов, под любую кастомизацию.

    Что значит работать с 1С? Это у 1С сложности сделать XML, например. Даже для собственного Битрикса. Там нужно сервер делать. Короче настройки разные. Посмотрите в сети, расширение импорт / экспорт для 1С - 10-20 тысяч стоит. А зачем оно нужно, если там, типа, авто синхронизация? Поясню. Потому что встроенного импорта быть не может. Т.к. у всех в 1С своя архитектура ведения товаров. Особенно, если речь про большие компании. И еще нужно всё настроить - денег заплати куча.
    Для опенкарта есть бесплатные импорты / экспорты. Есть платные - 500-1500 тысяч рублей тот же 1С excange :)
    И все дела.

    В Опенкарте есть всё, что нужно - все модули, все доставки, все формы оплаты, поиски, фильтрация, нотификация, 1 клик, оформление в одну страницу, и прочее, и многое-многое другое. Чего нет, скорее всего уже кто-то дописал. Стоит, как правило, 500-1500 рублей, в среднем. Ставится за 5 минут.

    Раньше были virtuamart, joomshoping и т.п. Но это компоненты под CMS, которые в принципе не для магазинов. С самого начала они такие - пойдут для первого раза.
    Сейчас из Open Source лучший это Опенкарт. По рейтингам магазинных CMS. А коммерческие. Ну там или пусто вообще (написано "мы скоро всё сделаем"). Или дорого и код такой, что развитие будет стоит 10000 рублей за мелочь. Ну потому что программисту лень погружаться в самописные или мегасамописные решения за 500 рублей.
    Про безопасность я вообще молчу. Откуда эта информация, что там плохо с ней? Это воообще не так.
    А на счет высокой нагрузки. Для высокой нагрузки нужен хостинг. Вообще для всех CMS. Просто получается, что ставят Опенкарт и когда врубаются, какая это классная штука. Пихают туда десятки тысяч товаров на хостинг за 100 рублей. Конечно он 10000 будет показывать. Там есть механизмы ускорения. Но вообще говоря, для нагрузки 5000-10000 хостинг уже нужен минимум простенький виртуальный сервер. И это не требование Опенкарт. Этого требует нагрузка 5000 и более тысяч товаров.

    Что касается архитектуры. Отличный пример MODX там вообще нет паттернов :) По этому никто ничего толком написать под каждый конкретный случай не может. Сначала, как говорится, "нужно посмотреть". В Опенкарт, строгая типизация не делает его хуже. А дает возможность быстро и недорого его развивать. Любому программисту. Если он не вчера PHP выучил. А без паттернов профессионалы не пишут. Потому, что они профессионалы. И паттерны, MVC и другие были придуманы не для того, чтобы их ругали те, кто не знает зачем нужны паттерны. Просто нужно не ругать паттерны, а изучить зачем они нужны. А еще лучше написать свое решение сначала без паттерна. А через пол года попытаться его развить :) И осознать, что "всё забыл, где тут чо"
    Ответ написан
    Комментировать
  • Как убрать повторяющиеся слэши в .htaccess?

    @ShamblerR
    Дааю сразу все поскольку в свое время задолбало для каждого проекта делать все заново, по этому сейчас просто вставляю кусок и все.
    ############################################################################
    #### Cтандартный .htaccess для проектов студии Клондайк, версия 2.3     ####
    ############################################################################
    RewriteEngine On
       #  Директива включает редиректы.
    RewriteBase / 
       # Без директивы (.*) = /$1 будет /var/wwww/site/web/$1  с директивой  = /$1
    Options +FollowSymLinks
       # Разрешает переход по символическим ссылкам.
    
    ############################################################################
    #### Перенаправляем протокол https на http                              ####
    ############################################################################
    RewriteCond %{HTTPS} on
       # Проверяем наличие https в URL.
    RewriteRule ^.*$ http://%{SERVER_NAME}%{REQUEST_URI}
       # Перенаправляем протокол на http.
    
    ############################################################################
    #### Выбор основного зеркала (или с www или без www)                    ####
    ############################################################################
       # 1. Редирект с www на без www. (раскоментировать директивы пункта 1)
    #RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
       # Проверяем, содержит ли домен www (в начале URL).
    #RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
       # Перенаправляем URL на домен без www.
    ####
       # 2. Редирект без www на www. (раскоментировать директивы пункта 2)
    #RewriteCond %{HTTP_HOST} !^www\.(.*) [NC]
       # Проверяем, не содержит ли домен www (в начале URL).
    #RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
       # Перенаправляем URL на домен c www.
    
    ############################################################################
    #### Убираем повторяющиеся слеши (/) в URL                              ####
    ############################################################################
    RewriteCond %{REQUEST_URI} ^(.*)/{2,}(.*)$
       # Проверяем, повторяется ли слеш (//) более двух раз.
    RewriteRule . %1/%2 [R=301,L]
       # Исключаем все лишние слеши.
    
    ############################################################################
    #### Убираем слеши в конце URL для статических файлов (содержит точку)  ####
    ############################################################################
    RewriteCond %{REQUEST_URI} \..+$  
       # Если файл содержит точку.
    RewriteCond %{REQUEST_FILENAME} !-d   
       # И это не директория.
    RewriteCond %{REQUEST_FILENAME} -f
       # Является файлом.
    RewriteCond %{REQUEST_URI} ^(.+)/$      
       # И в конце URL есть слеш.
    RewriteRule ^(.+)/$ /$1 [R=301,L]     
       # Исключить слеш.
    
    ############################################################################
    #### Добавляем слеш(/), если его нет, и это не файл.                    ####
    ############################################################################
    RewriteCond %{REQUEST_URI} !(.*)/$
       # Если слеша в конце нет.
    RewriteCond %{REQUEST_FILENAME} !-f
       # Не является файлом.
    RewriteCond %{REQUEST_URI} !\..+$
       # В URL нет точки (файл).
    RewriteRule ^(.*)$ $1/ [L,R=301]
       # Добавляем слеш в конце.
    
    ############################################################################
    #### Убираем index.php, если он есть в конце URL                        ####
    ############################################################################
    RewriteCond %{REQUEST_METHOD} =GET
       # Выявляем GET запрос в URL (не POST).
    RewriteCond %{REQUEST_URI} ^(.*)/index\.php$
       # URL cодержит index.php в конце.
    RewriteRule ^(.*)$ %1/ [R=301,L]
       # Удалить index.php из URL.
    
    ############################################################################
    #### Конец общей части, далее следует собственные директивы .htaccess   ####
    ############################################################################
    Ответ написан
    5 комментариев