WordPress перемещен на новый сервер, теперь пытается загрузить файл

12

Позвольте мне начать с того, что я без проблем перенес десятки веб-сайтов с одного сервера на другой.

Недавно я переместил веб-сайт, и при посещении URL-адреса автоматически загружается файл с именем «download» без расширения и размером всего 1 КБ. Я сделал резервную копию всех файлов и загрузил базы данных, используя четыре различных метода, просто чтобы убедиться: BackWPup, BackUpWordPress и вручную, архивируя файлы и загружая файлы через FTP.

Оригинальный сайт отлично работает на оригинальном сервере.

Я использовал метод, который всегда использовал при переходе на новый сервер.

На новом сервере:

  1. Создать новую БД, пользовательскую и импортную базу данных
  2. Загрузить файлы и распаковать
  3. Отредактируйте wp-config.php с новым именем БД, пользователем, паролем
  4. Измените URL сайта, используя метод functions.php в Кодексе WordPress, здесь - http://codex.wordpress.org/Changing_The_Site_URL

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

В дополнение к методам, упомянутым выше, я попытался решить следующие проблемы:

  1. Изменено имя папки «plugins», чтобы увидеть, не вызывал ли плагин ошибку
  2. Изменено имя папки активной темы, чтобы увидеть, не вызывала ли тема ошибку
  3. Изменил WP_DEBUG на «true» в wp-conig.php - Но сайт никогда не загружается, поэтому ошибки не отображаются.

В настоящее время ошибочный веб-сайт находится по адресу - http://cgdev.webworksplayground.com/

Спасибо за помощь.

Трэвис Пфланц
источник

Ответы:

11

Я полагаю, вы не взглянули на файл, который служит для загрузки, если бы вы видели это:

<?php
/**
 * Front to the WordPress application. This file doesn't do anything, but loads
 * wp-blog-header.php which does and tells WordPress to load the theme.
 *
 * @package WordPress
 */

/**
 * Tells WordPress to load the WordPress theme and output it.
 *
 * @var bool
 */
define('WP_USE_THEMES', true);

/** Loads the WordPress Environment and Template */
require( dirname( __FILE__ ) . '/wp-blog-header.php' );

Который мог бы быть легко идентифицирован как содержимое index.phpфайла внутри корня вашей установки WordPress.

Относительно причины (причин) для этого поведения, проверьте, если у вас есть правильные права доступа к файлу , убедитесь, что ваш файл htaccess правильный. Кроме того, некоторые другие параметры, связанные с хостингом, могут быть неверными, см. Кодекс: хостинг WordPress (хотя и не очень информативный) или здесь. Каковы оптимальные методы настройки сервера для сайтов Wordpress? ,

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

Nicolai
источник
6
Спасибо за ответ. В .htaccess это было добавлено в файл - # Use PHP54 Single php.ini as default AddHandler application/x-httpd-php54s .phpпосле удаления все, кажется, работает хорошо.
Трэвис Пфланц
С удовольствием. Хорошо, это директива для использования PHP 5.4 с патчем Suhosin. Не уверен, почему это не сработает. Я использовал подобные и никогда не было проблем. Может быть, попросите поддержки ваших хостеров. @TravisPflanz
Николай
Здравствуйте @something, я также сталкиваюсь с той же проблемой. Я проверил свой файл .htaccess и обнаружил, что моя проблема похожа на проблему Трэвиса. Я также удалил этот дополнительный код из файла, но когда я вхожу, чтобы обновить постоянные ссылки, тот же код переписывается в файле.
Кейур Патель
@KeyurPatel Это может быть конфигурация сервера, обратитесь к ссылкам в моем ответе для получения дополнительной информации.
Николай
В моем случае очистка данных сайта браузера устранила проблему (В Chrome: настройки> Настройки сайта> Просмотреть все файлы cookie и данные сайта> удалить соответствующие данные). Моя проблема возникла сразу после установки большого модуля php.
Эрик Х
4

Простые шаги

1 - Перейти к файловому менеджеру через cpanel или FTP

2 - Удалите .htaccess (убедитесь, что вы создали резервную копию)

3 - Откройте ваш сайт и установите постоянные ссылки, которые создадут новый файл .htaccess.

4 - Наслаждайтесь!

Я только что удалил файл .htaccess, и теперь он работает отлично :)

Кайзер Ур Рехман
источник
1
Удаление .htaccess работает нормально и автоматически создает новый .htaccess. Спасибо
Джамиль Ахмед
Да. Технически это работает, но если в файле .htaccess есть что-то еще, что нужно веб-сайту, он будет удален.
Трэвис Пфланц
1

Вы также можете просто добавить следующую строку в .htaccess, которая позволяет вариациям PHP просто быть в безопасности.

AddHandler application/x-httpd-php52 .php .php5 .php4 .php3
Зак Льюис
источник
1

Mu-plugins добавляет обработчик, когда вы сохраняете конфигурацию, AddHandler application/x-httpd-php71 .phpделая страницу загружаемой, а не обрабатываемой.

Если вы просто удалите строку из вашего .htaccess (или удалите файл), строка будет возвращаться при каждом сохранении настроек.

Лучшее решение - изменить с помощью ftp файл wp-content / mu-plugins / endurange-php-edge.php

Просто прокомментируйте (добавив "//" перед строкой) строку 20:
// $this->hooks();

Справка: проблема с htaccess после сохранения настроек

Diogyn
источник