Входной файл не указан

Обновлено: 07.07.2024

Обновите WordPress до последней версии. В некоторых установках есть ошибка постоянной ссылки.

Убедитесь, что Apache правильно настроен для ModRewrite.

В разделе «Поддержка»: «Параметры»> «Постоянные ссылки» есть раздел «Необязательно». Это не НАСТОЛЬКО необязательно. После обновления, упомянутого для категории index.php / file (у меня есть постоянные ссылки PATHINFO), мне не нужны «файлы», поэтому я изменил это на index.php / Теперь, когда я перешел на index.php / _ / (или оставьте поле пустым, что дает стандартный подпуть "Категория"), все снова работает. Вот файл Mod Rewrite:

У меня такая же ошибка. На этом сервере у меня установлено около 70 WP. У меня такая же проблема.

У меня также была такая же проблема после перехода с WordPress на новый WordPress (веб-сайт полностью воссоздан)

Я выполнил перенос данных с помощью wp-migrate-pro.

Я начинаю все сначала (и деактивировал iTheme Security перед переносом данных с помощью wp-migrate-pro)

У меня была эта проблема, и в итоге это была проблема с моей конфигурацией php. После перестройки php.ini мой сайт поднялся.

Существует множество причин, по которым вы можете получить ошибку «Не указан входной файл» в WordPress.

В моем случае это произошло из-за того, что я использовал php-fpm и неправильно указал docroot в файле конфигурации пула php-fpm. Но это, вероятно, с большей вероятностью вызовет его для всех страниц, а не только для интерфейсных страниц.

В других случаях это может быть проблема либо с конфигурацией vhost Apache, либо с .htaccess, как предлагали другие.

Если это связано с постоянными ссылками, вы можете перейти в раздел «Постоянные ссылки» в бэкэнде и перестроить их (при условии, что .htaccess доступен для записи пользователю вашего веб-сервера).

В основном, я думаю, что ошибка просто говорит: «По какой-то причине я не могу найти файл, который вы просите меня искать». Но у него нет стандартного ErrorDocument 404, который мог бы предоставить Apache, поэтому это сбивает с толку.

Проверьте свою версию PHP! Я обновляю свой php с 5.4.45 до 7.2.14, и мой wordpress поднялся

У меня проблема с моим сервером разработки. Запуск Win 10 Pro, IIS 10.0.16299, PHP 5.6 (установлен на C:\Program Files (x86)\PHP\v5.6 ). Это недавняя проблема; Раньше PHP работал нормально, но потом просто перестал работать.

Все мои PHP-приложения теперь возвращают ошибку «Не указан входной файл». Эти приложения находятся в «Веб-сайте по умолчанию», но расположены в другом месте (с моими рабочими материалами). Они настроены в IIS, и совместное использование должно быть настроено правильно (так как все раньше работало).

Вот то, что я попробовал, по всей информации, которую я нашел в Интернете. Ничего не работает, однако:

    Удаление и переустановка IIS из панели управления | Программы и возможности | Включите и выключите функции Windows. После переустановки добавили обработчик FastCGI в IIS, указывая на C:\Program Files (x86)\PHP\v5.6\php-cgi.exe , Также дважды проверил, что PATH включает в себя каталог PHP.

Заменил php.ini (в каталоге 5.6) на копию для разработки и обновил следующие строки:

Сканировал мой диск на наличие ошибок, провел полную проверку на вирусы, проверил мой файл hosts, чтобы убедиться, что ничего не случилось.

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

Еще одно замечание: хотя все мои php-приложения возвращают эту ошибку, C:\inetpub\wwwroot\phpinfo.php файла нет (этот файл имеет одну строку кода: phpinfo(); ). Этот файл работает.

Обновить

Обновить

Я полностью заменил установку PHP на новейшую не поточнобезопасную версию PHP 5.6.

Это файл php.ini сейчас в C:\Program Files (x86)\PHP\v5.6 (минус все прокомментированные вещи):

У меня есть тестовый файл PHP следующим образом:

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

Обновить

Решение

Эта ошибка означает, что ваш PHP не настроен правильно на вашем сервере IIS.
Решение проблемы:
Откройте файл php.ini и просмотрите настройки doc_root.
Примером значения может быть следующая настройка:

Комментарии выше этого параметра говорят:

Если вы используете PHP в режиме ISAPI, а не CGI, попробуйте закомментировать настройки, чтобы они выглядели так:

Затем сохраните php.ini и перезапустите IIS, открыв командную строку (Пуск => Программы => Стандартные => Командная строка) и введите команду:

Это должно решить проблему!

Другие решения

РЕДАКТИРОВАТЬ

Говорил слишком рано. Оказывается, это заставляет его работать на моих тестовых сайтах, но не на моих реальных сайтах разработки, которые находятся на OneDrive. Обновлю мой вопрос с новой информацией. Тем не менее, это шаг в правильном направлении, и, по крайней мере, он открывает возможный обходной путь.

Обновил PHP до последней версии, а также отключил параметр OneDrive «Экономьте место и загружайте файлы по мере их использования». Перезагрузился, и это наконец-то сработало.

Мой сайт можно найти здесь.

Мой .htaccess установлен на:

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

Нам нужно найти альтернативу.

Нам нужно найти альтернативу изменению настроек PHP
Заглянув в system/uri.php в строке 40, вы увидите, что CMS пытается два типа обнаружения URI: первый из них PATH_INFO , который, как мы только что узнали, не будет работать, а второй - REQUEST_URI .

В принципе, этого должно быть достаточно, но анализ переданного URI вызовет у вас больше проблем, поскольку URI, который вы можете передать переменной REQUEST_URI , заставляет parse_url() , чтобы вернуть только путь URL, что фактически возвращает вас к нулю.

Теперь, на самом деле, осталась только одна возможность - и это изменить суть CMS. Часть определения URI недостаточна.

Добавьте QUERY_STRING в массив в строке 40 как первый элемент в system/uri.php и измените свой .htaccess, чтобы он выглядел так:

Это передаст URI, который вы запрашиваете, в index.php как QUERY_STRING и будет обнаруживать URI, чтобы найти его.

Это, с другой стороны, делает невозможным обновление CMS без изменения файлов ядра, пока это не будет исправлено. Это отстой .

Нужен лучший вариант?
Найдите лучшую CMS.

В моем случае я исправил это, вставив правила в директиву LocationMatch

/. соответствует любому местоположению

У меня есть правила перезаписи внутри одного из файлов .conf файла Apache NOT .htaccess .

Я не знаю, почему это сработало со мной, это моя текущая настройка

  • Apache версии 2.4
  • PHP 7.1
  • ОС Centos 7
  • PHP - FPM

Решением для меня было удалить пробелы в одном из моих вспомогательных файлов. Ошибка перечисляла две задействованные страницы, файл сеанса CI и один из моих пользовательских помощников.

Отключение PHP-FPM устранило мою проблему.

Беги ulimit -n 2048

И перезапустите php / php-fpm

Обновить

Все предыдущие обзоры я проверял, но решения не было. Но я не сдавался.

Раскомментируйте следующие строки в моей конфигурации NGINX

Такой же код должен следовать в папке включения сайта

И прокомментируйте это:

Я несколько раз менял оригинал:

Возвращаясь к этому:

И наконец я нашел то, что сработало .

Я также рекомендую эти строки .

И даже тайм-аут FastCGI (только для повышения производительности)

В процессе я проверил журнал NGINX на предмет всех изменений. (Это очень важно, поскольку показывает неправильный параметр.) В моем случае это так, но это зависит от конфигурации:

Проверьте конфигурацию NGINX

Внимание, это один из вариантов . Что ж, на том же сервере то, что не работало на этом сайте, работает на других . Так что имейте в виду, что настройки зависят от платформы.

В данном случае это была CMS Joomla.

У меня это сработало .. добавить поверх файла .htaccess. Это отключило бы FastCGI на учетной записи виртуального хостинга godaddy.

Параметры + ExecCGI

Добавьте эти строки в файлы .htaccess (каталог установки веб-сайта и веб-сайта):

Это экономит мне день! Ваше здоровье! Спасибо, DragonLord!

GoDaddy в настоящее время (февраль 2013 г.) поддерживает модификацию FastCGI для некоторых учетных записей, использующих PHP 5.2.x или более ранние версии. См. Статью GoDaddy "Отключение FastCGI в Ваша учетная запись хостинга ".
(В моем случае это, по-видимому, необходимо для перевода текущей версии LimeSurvey (2.0) в рабочее состояние.)

Anonim

Мой сайт можно найти здесь.

Мой .htaccess установлен на:

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

Нам нужно найти альтернативу.

Нам нужно найти альтернативу изменению настроек PHP
Глядя в system/uri.php в строке 40 вы увидите, что CMS пытается два типа обнаружения URI, первый из которых PATH_INFO , который, как мы только что узнали, не сработает. Другой REQUEST_URI .

В принципе, этого должно быть достаточно, но синтаксический анализ переданного URI вызовет у вас больше проблем, поскольку URI, который вы могли бы передать REQUEST_URI переменная, силы parse_url() чтобы вернуть только URL-путь - что в основном возвращает вас к нулю.

Теперь, на самом деле, осталась только одна возможность - и это изменить суть CMS. Часть определения URI недостаточна.

Добавить QUERY_STRING в массив в строке 40 как первый элемент в system/uri.php и измените свой .htaccess, чтобы он выглядел так:

Это передаст запрашиваемый вами URI index.php в виде QUERY_STRING и иметь обнаружение URI, чтобы найти его.

Это, с другой стороны, делает невозможным обновление CMS без изменения файлов ядра, пока это не будет исправлено. Это отстой .

Нужен лучший вариант?
Найдите лучшую CMS.

лучший простой ответ всего лишь одно изменение строки, и все готово.

рекомендуется для хостинга godaddy.

  • 4 Возможно, вы захотите ввести соответствующий код и объяснить. Если ссылка устареет, ваш ответ ничего не будет значить для будущих посетителей.
  • 3 Я попробовал ваше предложение, и оно отлично сработало! Добавить cgi.fix_pathinfo = 1 в ваш файл php5.ini
  • А как насчет приложения, запущенного на локальном сервере (Laragon), с PHP7 , каков эквивалент вашего решения в таком случае?

В моем случае произошла ошибка в переменной open_basedir php.ini.

Добавьте эти строки в файлы .htaccess (каталог установки веб-сайта и веб-сайта):

Это экономит мне день! Ура! Спасибо DragonLord!

У меня это сработало .. добавить поверх файла .htaccess. Это отключило бы FastCGI на учетной записи виртуального хостинга godaddy.

Параметры + ExecCGI

Обновить

Все предыдущие обзоры я проверял, но решения не было. Но я не сдавался.

Раскомментируйте следующие строки в моей конфигурации NGINX

Тот же код должен следовать в папке включения сайта

И прокомментируйте это:

Я несколько раз менял с оригинала:

Возвращаясь к этому:

И наконец я нашел то, что сработало .

Я тоже рекомендую эти строчки .

И даже таймаут FastCGI (только для повышения производительности)

В процессе я проверил журнал NGINX на предмет всех изменений. (Это очень важно, потому что показывает неправильный параметр.) В моем случае это так, но это зависит от конфигурации:

Протестируйте конфигурацию NGINX

Внимание, это один из вариантов . Что ж, на одном сервере то, что не работало на этом сайте, работает и на других . Так что имейте в виду, что настройки зависят от платформы.

В данном случае это была CMS Joomla.

Бежать ulimit -n 2048

И перезапустите php / php-fpm

Решением для меня было удалить пробелы в одном из моих вспомогательных файлов. Ошибка перечисляла две задействованные страницы, файл сеанса CI и один из моих пользовательских помощников.

В моем случае я исправил это, вставив правила в директиву LocationMatch.

/. Матчи Любые расположение

У меня есть правила перезаписи внутри одного из .conf файлы Apache НЕ .htaccess файл.

Читайте также: