Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Запарился с абсолютным путём.  (Прочитано 4710 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн BigDogs.Ru

  • Участник
  • *
  • Сообщений: 100
  • Да, это ДОГ
    • Просмотр профиля
    • BigDogs.Ru
Re: Запарился с абсолютным путём.
« Ответ #15 : 05 Сентября 2010, 00:33:40 »
тогда не DOCUMENT_ROOT, а
'http://'.$_SERVER['HTTP_HOST']

Ну на большинстве хостингов они совпадают. И в данном случае это неважно - мы говорим о HTML-разметке, в которой недоступно все, что за пределами этого самого 'http://'.$_SERVER['HTTP_HOST']. У топикстартера проблема с путями в HTML и css, а не в PHP. Незачем притягивать PHP там, где он вообще не нужен - все браузеры понимают лидирующий слэш без всяких переменных.

Оффлайн easy2002

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2786
  • Мурманск
    • Просмотр профиля
Re: Запарился с абсолютным путём.
« Ответ #16 : 05 Сентября 2010, 00:36:57 »
<link rel="stylesheet" href="<?='http://'.$_SERVER['HTTP_HOST']?>/style.css" type="text/css" media="screen, projection" />
Tempora mutantur et nos mutantur in illis

Оффлайн BigDogs.Ru

  • Участник
  • *
  • Сообщений: 100
  • Да, это ДОГ
    • Просмотр профиля
    • BigDogs.Ru
Re: Запарился с абсолютным путём.
« Ответ #17 : 05 Сентября 2010, 00:40:41 »
<link rel="stylesheet" href="<?='http://'.$_SERVER['HTTP_HOST']?>/style.css" type="text/css" media="screen, projection" />

ЗАЧЕМ????? Зачем писать эту гору кода вместо одного слэша? В CSS в путях к изображениям для бэкграундов тоже так написать???

Оффлайн easy2002

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2786
  • Мурманск
    • Просмотр профиля
Re: Запарился с абсолютным путём.
« Ответ #18 : 05 Сентября 2010, 00:43:42 »
зачем спорить, пусть лучше ТС разберется с относительными путями  ;)
Tempora mutantur et nos mutantur in illis

Оффлайн BigDogs.Ru

  • Участник
  • *
  • Сообщений: 100
  • Да, это ДОГ
    • Просмотр профиля
    • BigDogs.Ru
Re: Запарился с абсолютным путём.
« Ответ #19 : 05 Сентября 2010, 00:49:41 »
зачем спорить, пусть лучше ТС разберется с относительными путями  ;)

А относительные пути при такой организации, как у него, работать вообще не будут. Я не случайно заостряю внимание на путях к изображениям в CSS. Смотрите - у него CSS в одной папке, шапка в другой, а сам индекс в третьей. Относительно чего прикажете писать пути к картинкам внутри CSS?
Именно для таких случаев и используется этот самый слэш в начале пути - чтобы любая страница в любой папке (включая виртуальные пути, прописанные через роутеры в PHP) знала, что искать нужно от корня домена. С физическими папками еще относительно просто кашу с относительными путями разгрести - сменить структуру папок, и дело с концом. А если пути виртуальные, через mod_rewrite, тогда как? Этот вот слэш в HTML и CSS нужно просто отпечатать в голове, если уж взялся за сайты сложнее, чем пара страниц на HTML.

Оффлайн easy2002

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2786
  • Мурманск
    • Просмотр профиля
Re: Запарился с абсолютным путём.
« Ответ #20 : 05 Сентября 2010, 00:59:08 »
Именно для таких случаев и используется этот самый слэш в начале пути
а если от слеша путь неизвестен?
к примеру в css с тем же самым mod_rewrite?
тогда как?
Tempora mutantur et nos mutantur in illis

Оффлайн BigDogs.Ru

  • Участник
  • *
  • Сообщений: 100
  • Да, это ДОГ
    • Просмотр профиля
    • BigDogs.Ru
Re: Запарился с абсолютным путём.
« Ответ #21 : 05 Сентября 2010, 01:05:31 »
Именно для таких случаев и используется этот самый слэш в начале пути
а если от слеша путь неизвестен?
к примеру в css с тем же самым mod_rewrite?
тогда как?

Такое может быть лишь в том случае, если css динамически определяется в роутере. Тогда конечно же на PHP, с использованием массива $_SERVER. Но это совсем другая история. И я даже не могу представить себе такую ситуацию, чтобы путь от корня к статическому файлу был неизвестен. Сейчас практически везде используется связка апач+nginx, который отдает всю статику - поэтому никто в своем уме не станет генерить css динамически, повышая нагрузку на сервер ради таких пустяковых задач. Проще отдать nginx'ом 100-килобайтную css, чем отдавать ее же по маленьким кусочкам, используя PHP.
Повторюсь - не нужно притягивать PHP там, где он не нужен.
« Последнее редактирование: 05 Сентября 2010, 01:09:00 от BigDogs.Ru »

Оффлайн prowoke

  • Автор темы
  • Любитель
  • *
  • Сообщений: 99
    • Просмотр профиля
Re: Запарился с абсолютным путём.
« Ответ #22 : 05 Сентября 2010, 01:06:09 »
<link rel="stylesheet" href="<?='http://'.$_SERVER['HTTP_HOST']?>/style.css" type="text/css" media="screen, projection" />
Вставил этот код в header  и всё равно не подключает.  И если слеш не подключает. А если без слеша то подключает но только главную. У меня ща такая каша в голове.

Оффлайн easy2002

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2786
  • Мурманск
    • Просмотр профиля
Re: Запарился с абсолютным путём.
« Ответ #23 : 05 Сентября 2010, 01:11:13 »
<link rel="stylesheet" href="<?='http://'.$_SERVER['HTTP_HOST']?>/style.css" type="text/css" media="screen, projection" />
Вставил этот код в header  и всё равно не подключает.  И если слеш не подключает. А если без слеша то подключает но только главную. У меня ща такая каша в голове.

ты уж сам не знаешь, где у тебя че лежит..
ложись спать :)
утро вечера того..
Tempora mutantur et nos mutantur in illis

Оффлайн BigDogs.Ru

  • Участник
  • *
  • Сообщений: 100
  • Да, это ДОГ
    • Просмотр профиля
    • BigDogs.Ru
Re: Запарился с абсолютным путём.
« Ответ #24 : 05 Сентября 2010, 01:15:40 »
<link rel="stylesheet" href="<?='http://'.$_SERVER['HTTP_HOST']?>/style.css" type="text/css" media="screen, projection" />
Вставил этот код в header  и всё равно не подключает.  И если слеш не подключает. А если без слеша то подключает но только главную. У меня ща такая каша в голове.

А у вас сайт точно в корне домена лежит? Может, он у вас в папке относительно корня домена?
Пример: вот мой сайт http://bigdogs.ru/
Я могу создать в его корне папку anysite, положить в нее index.php, настроить правило в .htaccess для mod_rewrite, и папка будет отдаваться по адресу http://anysite.bigdogs.ru
Но на самом деле она останется папкой, лежащей по адресу http://bigdogs.ru/anysite, и правильный путь к ее индексу относительно корня домена будет /anysite/index.php, а не /index.php

У вас точно не этот случай? Создайте файл test.php, напишите в нем <?php phpinfo(); ?>, откройте эту страницу в браузере и посмотрите там значение переменной $_SERVER['HTTP_HOST']

Оффлайн easy2002

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2786
  • Мурманск
    • Просмотр профиля
Re: Запарился с абсолютным путём.
« Ответ #25 : 05 Сентября 2010, 01:17:57 »
никто в своем уме не станет генерить css динамически, повышая нагрузку на сервер ради таких пустяковых задач. Проще отдать nginx'ом 100-килобайтную css, чем отдавать ее же по маленьким кусочкам, используя PHP.
Повторюсь - не нужно притягивать PHP там, где он не нужен.

боже упаси, я просто говорил о перемещении файла css темы в другой каталог :)
Tempora mutantur et nos mutantur in illis

Оффлайн BigDogs.Ru

  • Участник
  • *
  • Сообщений: 100
  • Да, это ДОГ
    • Просмотр профиля
    • BigDogs.Ru
Re: Запарился с абсолютным путём.
« Ответ #26 : 05 Сентября 2010, 01:23:10 »
никто в своем уме не станет генерить css динамически, повышая нагрузку на сервер ради таких пустяковых задач. Проще отдать nginx'ом 100-килобайтную css, чем отдавать ее же по маленьким кусочкам, используя PHP.
Повторюсь - не нужно притягивать PHP там, где он не нужен.

боже упаси, я просто говорил о перемещении файла css темы в другой каталог :)

Ну если шаловливые ручки - то это не лечится. А если перемещение осознанно - то поиск и замена по всем файлам, только опять же - зачем?  ;)

Оффлайн easy2002

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2786
  • Мурманск
    • Просмотр профиля
Re: Запарился с абсолютным путём.
« Ответ #27 : 05 Сентября 2010, 01:27:02 »
Цитировать
вот мой сайт http://bigdogs.ru/

(Нажмите, чтобы показать/скрыть)
Tempora mutantur et nos mutantur in illis

Оффлайн BigDogs.Ru

  • Участник
  • *
  • Сообщений: 100
  • Да, это ДОГ
    • Просмотр профиля
    • BigDogs.Ru
Re: Запарился с абсолютным путём.
« Ответ #28 : 05 Сентября 2010, 01:28:33 »
Я б его совсем переделала, только до своего руки всегда в последнюю очередь доходят  :'(

Оффлайн prowoke

  • Автор темы
  • Любитель
  • *
  • Сообщений: 99
    • Просмотр профиля
Re: Запарился с абсолютным путём.
« Ответ #29 : 05 Сентября 2010, 01:33:52 »
Завтра разбирусб, послушаю совет волка. Завтра у вас ещё немного времени поотнимаю. Всем спасибо.

Пользователь решил продолжить мысль 05 Сентября 2010, 15:33:24:
Так ну это если я сайт кидаю в localhost, то всё работает да. А если в папку localhost/mysite/ То будут все те проблемы про которые я писал. Как сделать, чтобы в папке лежал сайт а не сразу в localhost?
« Последнее редактирование: 05 Сентября 2010, 15:33:24 от prowoke »

 

Страница сгенерирована за 0.019 секунд. Запросов: 21.