Вот ошибка:
Warning (2): Cannot modify header information - headers already sent by (output started at /usr/share/php/cake/basics.php:111) [CORE/cake/libs/controller/controller.php, line 640]
$status = "Location: http://mydomain.com/blog/index"
header - [internal], line ??
Controller::header() - CORE/cake/libs/controller/controller.php, line 640
Controller::redirect() - CORE/cake/libs/controller/controller.php, line 621
PostsController::add() - APP/controllers/posts_controller.php, line 25
Object::dispatchMethod() - CORE/cake/libs/object.php, line 115
Dispatcher::_invoke() - CORE/cake/dispatcher.php, line 227
Dispatcher::dispatch() - CORE/cake/dispatcher.php, line 194
[main] - APP/webroot/index.php, line 88
Вот код для posts_controller.php
:
function add() {
if (!empty($this->data)) {
$this->Post->create();
if ($this->Post->save($this->data)) {
$this->Session->setFlash(__('Post saved!!', true));
$this->redirect(array('action'=>'index')); // line 25
} else {
}
}
$tags = $this->Post->Tag->find('list');
$statuses = $this->Post->Status->find('list');
$this->set(compact('tags', 'statuses'));
}
Вот строка 111:
echo "\n<pre class=\"cake-debug\">\n";
Вывод debug_print_backtrace()
в basics.php
файл основного торта:
http://pastebin.com/fBFrkYsP
Я просмотрел все файлы, которые я отредактировал (в отличие от тех, которые я только что выпек), и у меня нет пробелов за пределами php скобок (). Я использовал этот скрипт: Найти все файлы с пустым или WS в BOF или EOF .
Мой текстовый редактор настроен на UTF-8. В основном проблема исчезает, когда я закомментирую строку 25 (отмечена выше с комментарием). Но я должен быть в состоянии использовать перенаправление ... Кто-нибудь может указать мне правильное направление?
EDIT:
добавлена строка на 111 выше; РЕДАКТИРОВАТЬ 2: добавлен вывод debug_print_backtrace ()