Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Ошибка сервера АПАЧ

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Golovastik
Отправлено: 01 Августа, 2010 - 01:32:09
Post Id


Гость


Покинул форум
Сообщений всего: 89
Дата рег-ции: Июль 2010  


Помог: 0 раз(а)




У меня установлен сервер АПАЧ.
В папке WWW сервера АПАЧ лежит домен под названием
sos. В этом домене лежит файл index.php, style.css.
Папки:
-blocks;
-img;
-novosti.
В файл index.php подключаются 3 инклюида.

В папке novosti лежит файл 1.php, я в него скопировал весь код с файла index.php для теста. Дело в том что в файле index.php есть ссылка, при нажатии на которую я ссылаюсь на папку novosti файл 1.php который в ней находится.

Если прописать в ссылке <a href="novosti/1php"></a>,файла индекс,которая ссылается на 1.пхп
я получаю следующие ошибки браузера.
CODE (text):
скопировать код в буфер обмена
  1.  
  2.  
  3. Warning: main(blocks/shapka.php): failed to open stream: No such file or directory in z:\home\localhost\www\exb\novosti\1.php on line 12
  4.  
  5. Warning: main(): Failed opening 'blocks/shapka.php' for inclusion (include_path='.;/usr/local/php/PEAR') in z:\home\localhost\www\exb\novosti\1.php on line 12
  6.  
  7.  
  8. Warning: main(blocks/menu.php): failed to open stream: No such file or directory in z:\home\localhost\www\exb\novosti\1.php on line 17
  9.  
  10. Warning: main(): Failed opening 'blocks/menu.php' for inclusion (include_path='.;/usr/local/php/PEAR') in z:\home\localhost\www\exb\novosti\1.php on line 17
  11.  
  12.  
  13. Warning: main(blocks/copyright.php): failed to open stream: No such file or directory in z:\home\localhost\www\exb\novosti\1.php on line 24
  14.  
  15. Warning: main(): Failed opening 'blocks/copyright.php' for inclusion (include_path='.;/usr/local/php/PEAR') in z:\home\localhost\www\exb\novosti\1.php on line 24
  16.  
  17.  
  18.  


Если же кинуть прямо в папке домена sos рядом с файлом index.php файл 1.php,тогда всё работает, но дело в том что если я буду так не по папкам кидать файлы, а рядом с индексом в папке sos(домен),тогда будет огромная кучу файлов,что делать как правильно укзаать путь?
 
 Top
DeepVarvar Супермодератор
Отправлено: 01 Августа, 2010 - 01:46:24
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




include ('../blocks/shapka.php');

Вот эти ДВЕ ТОЧЕЧКИ дают понять что файл надо искать каталогом выше... т.е. выйти из novosti и зайти в blocks......
 
 Top
JustUserR
Отправлено: 01 Августа, 2010 - 03:04:09
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Golovastik Как правило для автоматизированного решения таких вопросов достаточно указывать не полный заранее прописанный путь к подключаемым файлам - а вычислять его во время выполнения программы на основе анализа ее местоположения При работе с web-путями удобным средством является использования виртуальный путей который специфицируют путь относительно корня сайта - но при подключении файла необходимо прописывать реальный файловый путь Для того чтобы его получить можно воспользоваться переменной окружения DOCUMENT_ROOT которая указывает файловый путь к корню web-сайта - а далее в нему уже прибавлять оставшуются часть от аналогичного виртуального web-пути Конечно такая аналогия работает только в том случае если в вашем web-сайте не используются механизмы alias-инга при запросе PHP-скриптов - но тем не менее если структура файлового дерева на сайте у вас постоянная то к дополнению значения DOCUMENT_ROOT вы можете использовать обычный относительный файловый путь


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
DeepVarvar Супермодератор
Отправлено: 01 Августа, 2010 - 04:08:40
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




JustUserR ммммммм...... Вы конечно правы, но я на вашем месте не стал бы так грузить новичка... Подмигивание
 
 Top
JustUserR
Отправлено: 01 Августа, 2010 - 13:20:17
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




DeepVarvar пишет:
JustUserR ммммммм...... Вы конечно правы, но я на вашем месте не стал бы так грузить новичка...
В принципе вы тоже правы однако метод с использованием переменной окружения DOCUMENT_ROOT может быть как раз очень полезен для многих пользователей - ведь если на web-ресурсе не используются alias-ы то такой способ позволяет отожествить виртуальный web-путь с относительным файловым путем
Удобно - для представления web-пути используеся конструкция "http://".HTTP_HOST."/path/to/file.ext" - а для относительного файлового пути DOCUMENT_ROOT."/path/to/file.exe" Как видно в таком случае можно универсально использовать виртуальные пути как в web- так и файловом пространстве - и это как раз позволяет при написании PHP-скриптов лишний раз не задумываться о их разницы
В завершении для удобства могу привести PHP-код двух функций которые генерируют web- и файловый путь соотвествтенно - по известному передаваемому файловому пути - аналогично такому как показывается при просмотре дерева файлов при доступе по FTP
PHP:
скопировать код в буфер обмена
  1. function web_path($virt_path) {$is=(substr($virt_path,0,1)==="/") ? "" : "/";
  2. return "http://".$_SERVER['HTTP_HOST'].$is.$virt_path; }
  3. function file_path($virt_path) {$is=(substr($virt_path,0,1)==="/") ? "" : "/";
  4. return $_SERVER['DOCUMENT_ROOT'].$is.$virt_path; }


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Golovastik
Отправлено: 01 Августа, 2010 - 21:35:28
Post Id


Гость


Покинул форум
Сообщений всего: 89
Дата рег-ции: Июль 2010  


Помог: 0 раз(а)




У меня есть 3 инклюида,каждый из них берёт файл пхп из папки blocks.
Если написать так, в каждом инклютде, всё вроде рабоатет но вместо картинок отображаются квадратики.
PHP:
скопировать код в буфер обмена
  1.  
  2.  <?PHP  include("../blocks/menu.php")?>
  3.  

Срабатывает, но вместо картинок отображается квадратики, картинки лежат в папке img,что делать тогда?
(Добавление)
Не получается. Вот вложил в архив домен,гляньте пожалуйста. Вначале запустите файл индекс,а потом попробуйте сделать переход с главной. в этом проблема с картинкой.

http://www[dot]sharemania[dot]ru/0214504
 
 Top
JustUserR
Отправлено: 02 Августа, 2010 - 01:22:45
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Golovastik Можете попробовать сделать диагностику и определить относительный путе по которым находяется используемые в PHP-скрипте подлючаемые файлы - а также отдельно проверить правильность относительных URL-путей Если на вашем web-сервере не используются механизмы alias-инга то для файловых и web-путей можно применять аналогичные виртуальные пути - причем можно использовать и относительные варианты путей в том случае если URL-пути указаны в гиперссылках в сокращенном варианте


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB