Помогите с Мод реврайт

Discussion in 'PHP' started by InFiNiTy, 22 Aug 2006.

  1. InFiNiTy

    InFiNiTy New Member

    Joined:
    22 Jun 2006
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    Народ поскажите, как сделать Так.

    У меня есть категория http://sayt.ru/soft

    как при поможи .htaccess сделать чтобы эта ссылка менялась на такую http://soft.sayt.ru/

    т.е нужно чтобы эта категория становилась как буд-то поддоменом.
     
  2. [hidden]

    [hidden] Elder - Старейшина

    Joined:
    5 Nov 2005
    Messages:
    70
    Likes Received:
    19
    Reputations:
    7
    Это возможно только если у тебя есть доступ к Dns хостинга.
    Когда-то мне тоже нужно было так сделать, но..
     
    1 person likes this.
  3. Talisman

    Talisman Elder - Старейшина

    Joined:
    22 Apr 2006
    Messages:
    400
    Likes Received:
    151
    Reputations:
    80
    упроси хостера иметь тебе возможность создавать домены третьего уровня. без этого никак.
    МОД_РЕВРАЙТ создан для создания ЧПУ - ЧеловекуПонятныхУрл, например, http://doci.nnm.ru/okroshka/21.08.2006/dm2_aka_aka_your_windows_friend/
     
  4. [hidden]

    [hidden] Elder - Старейшина

    Joined:
    5 Nov 2005
    Messages:
    70
    Likes Received:
    19
    Reputations:
    7
    Не, по сути, можно сделать то, что он хочет.

    RewriteCond %{HTTP_HOST} ^[^.]+\.sayit\.ru$
    RewriteRule ^(.+) %{HTTP_HOST}$1 [C]
    RewriteRule ^([^.]+)\.sayit\.ru(.*) /$1$2

    (с) http://www.nbsp.ru/articles/2002/09/10/modrewrite_v_pomosh_usability.html

    Но... В обычных условиях это не работает, требуется доступ к httpd.conf в раздел виртуальных директорий (я немного ошибся в предыдущем посте, прошу прощения).
     
    #4 [hidden], 22 Aug 2006
    Last edited: 22 Aug 2006
  5. ^ацтанЬ^

    ^ацтанЬ^ New Member

    Joined:
    4 Aug 2006
    Messages:
    19
    Likes Received:
    2
    Reputations:
    -2
    Вобщем то если его скрипт лежит в дире то он может через хостинг создать диру софт но а если это скрипт движка какованить и там типа сайт.ру/софт то переделать на софт.сайт.ру это тока нада кодом в самом двиге
     
  6. SMiX

    SMiX Elder - Старейшина

    Joined:
    25 Jul 2005
    Messages:
    227
    Likes Received:
    55
    Reputations:
    29
    В обычных условиях это работает, если есть панелька сипанель, ispmanager и прочее. Нужно в категории ДНС добавить запись *.домен.ру. И, если делать не через панель, никакого httpd.conf не нужно. Нужно иметь доступ к конфам named.
     
  7. InFiNiTy

    InFiNiTy New Member

    Joined:
    22 Jun 2006
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    Так у хостера спрашивал! Он сказал, что типо это возможно но нельзя делать! типо будет сервак грузить! но чет я не доганяю, почему если сайт работает с ЧПУ и все нармуль и ничего не грузит, а вот если сделать чего я хочу прям сразу сервак и загрузится!!

    Народ тогда как формируется строка на ЖЖ ЛафЖурнал.сом там ведь именно так и получается что для каждой новой учетки создается как бы виртуальный домен 3 уровня, сам их двиг написан на перле!! мож кто в нем копался?? А ка можно осуществить такой преход пользуясь только Php??
     
  8. SMiX

    SMiX Elder - Старейшина

    Joined:
    25 Jul 2005
    Messages:
    227
    Likes Received:
    55
    Reputations:
    29
    Двиг написано на bml каком-то у них, даже сорцы выложены. А сделать можно самому по мной вышеописанному способу, не спрашивая хостера. Конечно, если есть доступ к управлению днс(обычно он есть)
     
  9. InFiNiTy

    InFiNiTy New Member

    Joined:
    22 Jun 2006
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    2SMiX

    А можешь по подробнее описать свой способ !! ОЧень нужно.
     
  10. Brahma

    Brahma Elder - Старейшина

    Joined:
    14 Jul 2006
    Messages:
    55
    Likes Received:
    13
    Reputations:
    6
    Маскируем PHP .htaccess:
    Code:
    RewriteEngine On
    RewriteRule ^index.htm index.php?%{QUERY_STRING}
    RewriteRule ^index.html index.php?%{QUERY_STRING}
     
  11. SMiX

    SMiX Elder - Старейшина

    Joined:
    25 Jul 2005
    Messages:
    227
    Likes Received:
    55
    Reputations:
    29
    Brahma ты совсем не в тему.
     
  12. SMiX

    SMiX Elder - Старейшина

    Joined:
    25 Jul 2005
    Messages:
    227
    Likes Received:
    55
    Reputations:
    29
    Про подробнее. Идешь в панельку->управление днс->добавить запись. Ставишь *.домен.ру = ip_Домена. В хтакцесс домена.ру ставишь
    Code:
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^(.+)\.домен$ [NC]
    RewriteCond %{HTTP_HOST} !^www\.домен$ [NC]
    RewriteCond %{REQUEST_URI} !^/subdomains
    RewriteRule ^(.*) %{HTTP_HOST}$1
    RewriteRule ^(.*)\.домен(.*) /subdomains/$1/$2
    RewriteRule ^subdomains\.(.*) /subdomains/$1
    Таким образом test.Домен.ру будет брать файлы из папки subdomains/test. Можно поэкспериментировать с .htaccess, чтобы поддомен передавался в параметре скрипту. И еще момент. После добавления записи в днс она начнет работать не сразу - должна разойтись по миру.