Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z header()
Forum PHP.pl > Forum > Serwery WWW
anarchy
Mam nadzieję że to dobre forum do tego problemu. Otóż jest plik z funkcją:
  1. <?php
  2. function xtc_redirect($url) {
  3. header('Location: ' . eregi_replace("[rn]+(.*)$", "", $url));
  4. echo 'tu';
  5. }
  6. ?>


Plik jest require_once na początku skryptu i u mnie lokalnie (apache 2.0.55,php 4.4.3 i reszta) wywołanie tej fukncji działa tak jak ma działać.

Niestety na hostingu nazwa.pl nie działa a wynikiem wywołania funkcji jest napis tu

Co ciekawe jeżeli na początku pliku przed funkcją napiszę xtc_redirect(jakis adres) to przekierowanie działa.

Mimo wielu prób nie potrafię tego uruchomić sad.gif i wydaje mi się że coś zostało zmienione w php.ini albo w konfiguracji serwera ale kompletnie nie mogę wpaść na pomysł co. Co radzicie?

p.s.slesze w kodzie dopisało forum
p.s.2 wyedytowanie funkcji tak:
  1. <?php
  2. header('Location: ' . eregi_replace("[rn]+(.*)$", "", $url));
  3. ?>

daje wynik: bool(false) bool(false)
siemakuba
Cytat
(...) i u mnie lokalnie (apache 2.0.55,php 4.4.3 i reszta) wywołanie tej fukncji działa tak jak ma działać.
Skoro tak, to może problem leży tu:
Cytat
HTTP/1.1 requires an absolute URI as argument to » Location: including the scheme, hostname and absolute path, but some clients accept relative URIs.
(header" title="Zobacz w manualu php" target="_manual)
jeżeli podajesz jako parametr ścieżkę relatywną i lokalnie masz HTTP/1.0 a zdalnie HTTP/1.1 to wtedy klapa.

pozdr.
anarchy
Problem rozwiązany (szacunek dla adminów z nazwa.pl smile.gif)

Gdzieś na początku skrypt wysyłał nagłówki ze statusem 200 i gdy dochodziło do przekierowania to były zamieniane na 302 i wszystko było ok. Jednak po apgrejdzie z z php jako modułu w apache 1.3 do php jako fast cgi w apache 2 zmienił się sposób obsługi tych wysyłek i ten status był wysyłany który był pierwszy no i przekierowanie jakby było tylko ze ze statusem 200.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.