1. Куча / Говнокод #4737

    +143

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    RewriteRule info/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/(.*) /content.php?d1=$1&d2=$2&d3=$3&d4=$4&d5=$5&d6=$6&d7=$7&d8=$8&d9=$9&d10=$10&d11=$11 [L]
    RewriteRule info/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/(.*) /content.php?d1=$1&d2=$2&d3=$3&d4=$4&d5=$5&d6=$6&d7=$7&d8=$8&d9=$9&d10=$10 [L]
    RewriteRule info/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/(.*) /content.php?d1=$1&d2=$2&d3=$3&d4=$4&d5=$5&d6=$6&d7=$7&d8=$8&d9=$9 [L]
    RewriteRule info/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/(.*) /content.php?d1=$1&d2=$2&d3=$3&d4=$4&d5=$5&d6=$6&d7=$7&d8=$8 [L]
    RewriteRule info/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/(.*) /content.php?d1=$1&d2=$2&d3=$3&d4=$4&d5=$5&d6=$6&d7=$7 [L]
    RewriteRule info/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/(.*) /content.php?d1=$1&d2=$2&d3=$3&d4=$4&d5=$5&d6=$6 [L]
    RewriteRule info/([^/]+)/([^/]+)/([^/]+)/([^/]+)/(.*) /content.php?d1=$1&d2=$2&d3=$3&d4=$4&d5=$5 [L]
    RewriteRule info/([^/]+)/([^/]+)/([^/]+)/(.*) /content.php?d1=$1&d2=$2&d3=$3&d4=$4 [L]
    RewriteRule info/([^/]+)/([^/]+)/(.*) /content.php?d1=$1&d2=$2&d3=$3 [L]
    RewriteRule info/([^/]+)/(.*) /content.php?d1=$1&d2=$2 [L]
    RewriteRule info/(.*) /content.php?d1=$1 [L]

    facepalm.php

    Запостил: wiz, 24 Ноября 2010

    Комментарии (24) RSS

    • кому-то нужно срочно почитать документацию по мод-реврайту)))

      а вообще идеология реврайтов -- один из главных костылей пыхомира. ни в сервлетах ни в asp.net оно не нужно)
      Ответить
      • а при чем тут пых? пых - один модуль, рерайт - совершенно другой
        Ответить
        • дело не в пыхе, конечно.
          дело в апаче и памминге запросов на конкретный хэндлер.
          Ответить
          • да, этим не апач должен заниматься
            Ответить
            • во во)
              потому идеология сервлетов например в 100500 раз лучше чистого CGI (и пыха, коий почти что CGI)
              Ответить
              • ну цифра несколько завышена, но и правда грамотнее.
                а пых чуть лучше чистого cgi
                Ответить
              • решаемо и это.
                <IfModule mod_rewrite.c>
                  RewriteEngine on
                  RewriteCond %{REQUEST_FILENAME} !-f
                  RewriteCond %{REQUEST_FILENAME} !-d
                  RewriteRule ^(.*)$ index.php [L,QSA]
                </IfModule>

                и все
                Ответить
                • Вы правда не понимаете, чем это хуже servlet mapping?
                  Ответить
                  • понимаю
                    Ответить
                    • вот я и говорю: написание крупных проектов на PHP это перманентная борьба с платформой и костыли
                      Ответить
                      • написание крупных (реально крупных!) проектов это перманентная борьба и т.д.
                        Ответить
                      • с другой стороны:
                        дано: апач+пхп+мускул
                        задача: сделать проект средней величины и загруженности.
                        доказательство: *цензуро*
                        вывод: получилось говно.
                        Ответить
                  • Вы мне расскажите чем servlet mapping лучше, я послушаю.
                    Ответить
                    • Servlet mapping позволяет мапить конкретный запрос (по шаблону) в конкретный класс (сервлет).
                      Класс должен быть в класс-пасе, а значит он может быть в соседнем .jarнике например.
                      Этот маппинг описывается в рамках дескриптора приложения (web.xml) и пишется относительно контекста сервлета.

                      а значит админ вправе выбирать любой контейнер сервлетов (томкат, джетти, jboss итд), разворачивать приложение по любому урлу (в корень, в подпапку итд) и даже не знать что там во что мапится.

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

                      Простой пример: у меня есть .jar файл, в котором есть класс-сервлет, который умеет по определенному условию делать редирикет на другие сервлеты.

                      Я просто маплю его на нужный мне урл, он узнает свой контекст , и знает куда делать редирект.

                      в случае php если у меня есть такой класс, то я должен сделать файл redirect.php, подключить в нем этот класс, передавать там ему туда вызов, прописать в .htaccess реврайт, передать этому сервлету все 42 параметра, и каким-то образом сообщить ему реальный путь, что бы он смог делать относительного него редиректы.
                      а если у меня iis, то я вообще должен покупать аналог mod_rewrite за деньги.
                      Ответить
          • http://www.urbandictionary.com/define.php?term=pamming ?
            Ответить
            • именно))
              а Вы не считаете паммингом что для ЧПУ надо писать реврайт рулы?
              или что для сохранения объекта в памяти нужно его сериализовать и по IP передавать в СОСЕДНИЙ сервер (memcachd) итд?
              Ответить

    Добавить комментарий