PHP - Нет такого файла или каталога (сервер LAMP)

1

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

Я использую стек Битна Битнами. Я пытаюсь использовать PHP-скрипт (maintenance.php) для перемещения файлов на сервере. Поэтому я использую rename(filepath, newpath) в моем скрипте. Однако PHP-скрипт не может найти файл, даже если он существует на сервере.

SOLVED: Проблема заключалась в том, что я вызывал сценарий из двух разных мест во время отладки (мой браузер и оболочка linux). "Рабочий каталог" в каждом из этих мест был другим, поэтому файловые пути представляли разные местоположения в зависимости от того, откуда я вызвал PHP-скрипт.

  • 0
    Оставьте начало /
  • 0
    Уже попробовал. >> переименовать (картинки / CA / Онтарио / Ватерлоо / 564409b235bd29.29353255.jpg, архив / CA / Онтарио / Ватерлоо / 564409b235bd29.29353255.jpg): Нет такого файла или каталога
Показать ещё 2 комментария
Теги:
server
lamp

1 ответ

1

В корне нет каталога pictures поэтому /pictures работают. Вместо этого вам придется использовать абсолютный путь к каталогу pictures.

Существует несколько способов сделать это.

Вы можете использовать $_SERVER['DOCUMENT_ROOT'] который даст вам root directory under which the current script is executing.

reserved.variables.server

Кроме того, вы можете использовать __FILE__ который предоставит вам путь к текущему файлу. С dirname(__FILE__) вы можете получить каталог, а затем можете работать с каталогом изображений, перейдя на уровень вниз, используя ../.

Это также аналогичный вопрос, который вы можете проверить,

PHP включает абсолютный путь

  • 0
    Я делаю успехи сейчас. Я был сильно смущен, потому что я запускал скрипт php из своего браузера, а также оболочки и рабочие каталоги были разными для каждого. Спасибо за вашу помощь.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню