Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Установка root directory для php-скриптов в рамках 
:(
    Опции темы
Fobio
Дата 2.2.2013, 18:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 2.2.2013

Репутация: нет
Всего: нет



Приветствую, уважаемые форумчане!
Подскажите, пожалуйста, как мне настроить апач, дабы корнем какого-либо проекта была папка, в которой этот самый проект находится.
Связка апач-php у меня работает нормально. Но когда я обращаюсь к корню проекта из скрипта - получаю логический диск компьютера.
Заранее благодарю. smile
PM MAIL   Вверх
Sanchezzz
Дата 2.2.2013, 18:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1670
Регистрация: 19.11.2006
Где: Voronezh

Репутация: 41
Всего: 60



В каждом хосте указывается как DocumentRoot - путь задавать полный от корня
Код

Listen 127.0.0.1:80
NameVirtualHost 127.0.0.1:80
<VirtualHost 127.0.0.1:80>
  SSLEngine on
  DocumentRoot "Z:/home/localhost/www"  
  ServerName "localhost"
  ServerAlias "localhost" "www.localhost" 
</VirtualHost>



--------------------
Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS.
PM MAIL Skype GTalk   Вверх
Fobio
Дата 2.2.2013, 18:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 2.2.2013

Репутация: нет
Всего: нет



Sanchezzz, спасибо за ответ! smile
Сервер на локальном компьютере.
В htdocs сервера создал папку site и залил туда свой сайт.
Сделал <VirtualHost 127.0.0.1>
    ServerAdmin admin@site
    DocumentRoot "c:/Apache24/htdocs/site"
    ServerName site
    ServerAlias www.site
    ErrorLog "logs/site-error.log"
    CustomLog "logs/site-access.log" common
</VirtualHost>
В общем, сайт нормально работает.
Но echo realpath('/'); выдает "C:\", а должно то быть "C:/Apache24/htdocs/site", как я понимаю.
PM MAIL   Вверх
Sanchezzz
Дата 2.2.2013, 19:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1670
Регистрация: 19.11.2006
Где: Voronezh

Репутация: 41
Всего: 60



Ну правильно все работает
realpath -- Возвращает канонизированный абсолютный путь к файлу
Код

echo realpath('/'); // c:/
echo realpath('./'); // C:\WORK\nginx\home\localhost\public_html
echo realpath('../'); // C:\WORK\nginx\home\localhost
echo realpath($_SERVER['DOCUMENT_ROOT']); // C:\WORK\nginx\home\localhost\public_html








--------------------
Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS.
PM MAIL Skype GTalk   Вверх
Fobio
Дата 2.2.2013, 20:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 2.2.2013

Репутация: нет
Всего: нет



Sanchezzz, а, ну ок. Спасибо! smile
Тогда подскажите, пожалуйста, как настраиваются относительные пути?
К примеру, у меня есть ряд вложенных папок: site/a/b/c/file.php и в file.php я делаю include("/a/file2.php");
file2.php находится в папке a. Указанный выше инклуд выдает ошибку. Работает только include("../../file2.php");
PM MAIL   Вверх
skyboy
Дата 2.2.2013, 20:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



потому что ты путаешь относительный URL и относительный путь в файловой системе.
относительный путь в файловой системе(в т.ч. при вызове include/require) отсчитывается от текущего файла.
а путь "/a/file2.php" вообще абсолютный. в случае с windows, должно отсчитываться от корневого каталога текущей открытой папки. в твоем случае, include('/a/file2.php') преващается в обращение к файлу "C:\a\file2.php"
а относительный путь работает, да.
PM MAIL   Вверх
Fobio
Дата 2.2.2013, 23:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 2.2.2013

Репутация: нет
Всего: нет



skyboy, понял, спасибо! smile
В таком случае, что будет более правильным: использовать абсолютные пути c $_SERVER['DOCUMENT_ROOT'] или относительные с обилием точек и слешей?

PM MAIL   Вверх
skyboy
Дата 3.2.2013, 00:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



думаю, абсолютные пути лучше.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0497 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.