![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 8.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Dlaczego na niektórych serwerach przekierowania spowodować mogą błąd 500 (Internal Error. The server encountered an internal error and could not complete your request)? Na przykład u mnie na lokalhoście kod (Zend_Framework): Kod $this->_redirector->gotoRouteAndExit(array('id' => $quiz_id), 'quiz_info'); działa poprawnie, ale wykracza się na serwerze produkcyjnym. Po paru prostych testach doszedłem do wnioski, że przy przekierowaniu tworzy się pętla nieskończona. Dlaczego? Czy błąd tkwić może w niewłaściwie ustawionym baseUrl? Poniższy kod na serwerze produkcyjnym działa poprawnie: Kod // set previous url if (isset($_SERVER['HTTP_REFERER'])) { $previousUrl = $_SERVER['HTTP_REFERER']; } else { $previousUrl = BASE_URL; } $this->_redirect($previousUrl); ps. Podejżewam, że problem ten nie dotyczy bezpośrednio Zend Framework, podobne rzeczy dziać mogą się przy zwykłych przekierowaniach. Plik .htaccess mam raczej dobrze skonfigurowany, nie ma tam żadnych dziwactw mogących psuć przekierowania. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 627 Pomógł: 33 Dołączył: 1.05.2005 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
to raczej kwestia ustawien apache i mod_rewrite, nie sądze aby Zend Pseduo framework miał coś tu do rzeczy
-------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 31 Pomógł: 2 Dołączył: 20.07.2005 Ostrzeżenie: (0%) ![]() ![]() |
spróbuj tak:
Przed redirect w kontrolerze dodaj
jeżeli będzie ok na ten hosting co wywołuje problem, popraw plik Zend/Controller/Action/Helper/Redirector.php, zeby zawsze nie robić powyższego i standardowo ustaw
-------------------- Wspomnienia
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 25.06.2025 - 07:31 |