Scandir не удается открыть каталог

#php

#php

Вопрос:

 $contentdirectory = '/dead-wave/dead-wave_content'; 

      $contentlaunch = scandir($contentdirectory);
  

это то, что я использую для создания массива, из которого я повторяю его значения, используя a для каждого оператора. это отлично работает на моем выделенном сервере, но после размещения на серверах godaddy возвращает сообщение об ошибке «не удалось открыть каталог: нет такого файла или каталога в …» теперь путь к каталогу, безусловно, правильный, реальная проблема мне неизвестна. Есть мысли?

Комментарии:

1. Ваш полный путь к каталогу на сервере, вероятно, нет '/dead-wave/dead-wave_content' , не так ли?

2. Вы уверены, что путь указан правильно относительно сервера хостинга GoDaddy? Я имею в виду, это VPS или другой выделенный сервер, или общий хостинг? Это может быть что-то вроде /usr/dead-wave/dead-wave_content или что-то еще. У вас есть правильные разрешения для перечисления содержимого каталога?

Ответ №1:

Вы уверены, что путь правильный? Если путь является подкаталогом вашего текущего каталога, вы должны использовать ‘dead-wave / dead-wave_content’ вместо ‘/dead-wave /dead-wave_content’.

Ответ №2:

вы уверены, что путь правильный? на хостинге вы обычно привязаны к другому каталогу (например /home/user1 ).

Таким образом, путь сверху будет /home/user1/dead-wave/dead-wave_content/

вы можете сделать

 exec('pwd',$return);
print_r($return);
  

чтобы узнать, где вы на самом деле находитесь.

Ответ №3:

Я не уверен, что это та же проблема, что и у вас, но иногда я не могу использовать какие-либо функции ввода-вывода файлов, когда я запускаю модульные тесты поверх сервера Zend через Zend Studio, хотя они работали на Apache.

Я думаю, вам нужно каким-то образом переписать ваши пути, сделав их постоянными относительно веб-каталога сервера. Я не уверен, что это такое, но я уверен, что он есть.

РЕДАКТИРОВАТЬ О! Я не думаю, что Apache распознает стиль написания пути ‘/ toplevel / secondlevel’.