За последние 24 часа нас посетили 32897 программистов и 1755 роботов. Сейчас ищут 838 программистов ...

Как скрыть имя?

Тема в разделе "PHP для новичков", создана пользователем VaneS, 12 авг 2012.

  1. VaneS

    VaneS Активный пользователь

    С нами с:
    16 ноя 2011
    Сообщения:
    636
    Симпатии:
    4
    Адрес:
    Россия
    Здравствуйте! У меня есть такой вопрос, вот у меня на сайте к примеру открывается файл с полным адресом name.ru/index.php?page=5 Как можно скрыть название файла index.php, так, что бы все выглядело так
    name.ru/?page=5
    Таким образом мне нужно скрыть не только index.php, а все файлы на сайте
    Заранее большое спасибо!
     
  2. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    explode $_SERVER['PHP_SELF'] ?
     
  3. VaneS

    VaneS Активный пользователь

    С нами с:
    16 ноя 2011
    Сообщения:
    636
    Симпатии:
    4
    Адрес:
    Россия
    Извиняюсь за не точность, но мне надо что бы в браузере в адресной строке так отображалось
     
  4. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    так и будет.

    режте адрес.
     
  5. Крыс

    Крыс Активный пользователь

    С нами с:
    3 фев 2012
    Сообщения:
    449
    Симпатии:
    0
  6. VaneS

    VaneS Активный пользователь

    С нами с:
    16 ноя 2011
    Сообщения:
    636
    Симпатии:
    4
    Адрес:
    Россия
    Я уже подобное читал.... я вот не понимаю, а в самом коде php надо что то менять? И ссылки нужно как то редактировать?
     
  7. Крыс

    Крыс Активный пользователь

    С нами с:
    3 фев 2012
    Сообщения:
    449
    Симпатии:
    0
    зависит от алгоритма, и того, что ты хочешь сделать
    если у тебя где-то идет проверка на текущий адрес в коде - да, придётся менять
     
  8. VaneS

    VaneS Активный пользователь

    С нами с:
    16 ноя 2011
    Сообщения:
    636
    Симпатии:
    4
    Адрес:
    Россия
    Проверки только идут на существование данных в массиве гет и на тип этих данных... я вот прописал в .htaccess
    RewriteEngine on
    RewriteRule page/(.*)/(.*)/$ /abs.php?$1=$2

    сказано что запрос вида name.ru/abs.php?page=1 будет вида name.ru/page/1 я правда на денвере проверял, но у меня он выдает ошибку, тип запрашиваемый файл не существует..... вот и не понимаю что делать.... ладно бы если он page не видел, а он вообще думает что я захожу в директорию page, а в ней в 2 и там видимо ищет файл по умолчанию.... может я чего то не понял и делаю не так?
    вот источник где я это взял http://www.seoblog.com.ua/2008/11/04/kratkoe-rukovodstvo-po ... d_rewrite/

    **************************************************************************************************************************

    Создание ЧПУ ссылок с помощью mod_rewrite

    Модуль перезаписи Apache в основном используется для превращения динамических URL вида www.site.com/product.php?id=123 в статические и дружественные пользователю вида www.site.com/product/123.


    RewriteEngine on
    RewriteRule ^product/([^/\.]+)/?$ product.php?id=$1 [L]

    Еще один пример, который приводит URL:

    www.yoursite.com/script.php?product=123 к виду www.yoursite.com/cat/product/123/


    RewriteRule cat/(.*)/(.*)/$ /script.php?$1=$2
     
  9. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    Зах изголяться и мучить мод реврайт, когда все это сделать можно через php.
    Обрезать адрес и перемещать.
    Тем более у вас ссылка вида "?name=".

    селв + реквест и будет чудо =)
     
  10. VaneS

    VaneS Активный пользователь

    С нами с:
    16 ноя 2011
    Сообщения:
    636
    Симпатии:
    4
    Адрес:
    Россия
    А можно по подробнее как это сделать? Если можно через PHP то это даже будет большой плюс! А мод реврайт я затронул потому что мне так посоветовали...
     
  11. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    Если не углубляться сильно в код, то можно так:

    Код (PHP):
    1. $index='index.php';
    2. $request=$_SERVER['REQUEST_URI'];
    3. if(false!==strpos($request,$index)) {
    4.     header('Location: '.str_replace($index,'',$request));
    5. }