2016-03-02 5 views
0

Если я вхожу в свой домен с адресом: «www.domain.com», он работает, но если мне это нравится «domain.com», это не так, я получаю это сообщение:Мой домен не работает

Предупреждение: не удается изменить информацию заголовка - заголовки, уже отправленные (вывод запущен в /home/eventtou/public_html/index.php-2) в /home/eventtou/public_html/wp-includes/pluggable.php в строке 1228

здесь index.php

<?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'); 

и вот строки 1197 - 1232 моего pluggable.php

function wp_redirect($location, $status = 302) { 
    global $is_IIS; 

    /** 
    * Filter the redirect location. 
    * 
    * @since 2.1.0 
    * 
    * @param string $location The path to redirect to. 
    * @param int $status Status code to use. 
    */ 
    $location = apply_filters('wp_redirect', $location, $status); 

    /** 
    * Filter the redirect status code. 
    * 
    * @since 2.3.0 
    * 
    * @param int $status Status code to use. 
    * @param string $location The path to redirect to. 
    */ 
    $status = apply_filters('wp_redirect_status', $status, $location); 

    if (! $location) 
     return false; 

    $location = wp_sanitize_redirect($location); 

    if (!$is_IIS && PHP_SAPI != 'cgi-fcgi') 
     status_header($status); // This causes problems on IIS and some FastCGI setups 

    header("Location: $location", true, $status); 

    return true; 
} 
endif; 

Что я могу сделать для решения этой проблемы? заранее спасибо!

+0

попробуйте использовать ob_start() в верхней части страницы один раз – Deep

+7

Возможный дубликат [Как исправить заголовки уже отправленные ошибки в PHP] (http://stackoverflow.com/questions/8028957/how-to-fix- headers-already-sent-error-in-php) –

+0

Проконсультируйтесь с вашим провайдером, если ваш хост настроен на ответ на запросы 'domain.com'. Это своего рода субдомен, который не настраивается автоматически при заключении услуги хоста. Если хост принадлежит вам, я думаю, что это имеет значение для файла httpd.conf. – statosdotcom

ответ

0

При запуске апача, поместите файл .htaccess в корневом каталоге веб-сайта или вставить часть ниже в существующем .htaccess

<IfModule mod_rewrite.c> 
    ##-- Initialize and enable rewrite engine 
    ##-- Documentation http://httpd.apache.org/docs/misc/rewriteguide.html 
    RewriteEngine On 

    ##-- set the following line like e.g.: RewriteBase /myfolder/ 
    RewriteBase/
    RewriteCond %{HTTP_HOST} !^www\. [NC] 
    RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301] 
</IfModule> 

Тогда все доступы к domain.tld перенаправляются на WWW .domain.tld

Это не решит вашу проблему в коде. Но с точки зрения SEO это хорошая идея, чтобы предотвратить дублирование контента. И только потому, что доступ к нему осуществляется только через WWW, проблема уже не имеет значения.

Смежные вопросы