Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: ograniczenia funkcji header()
Forum PHP.pl > Forum > PHP
ktuvok
Administruję systemem działającym przez www, opartym na php. W wielu miejscach systemu wykonuje się przekierowanie, ot choćby tak:
  1. <?php
  2.  
  3. header(&#092;"Location: https://www.domena.pl/katalog/skrypt.php\");
  4.  
  5. ?>

Część juzerów stanowią pracownicy pewnej firmy, w której admin stara się dbać o bezpieczeństwo i kontrolować przeglądanie witryn. Od jakiegoś czasu nie mogą korzystać ze skryptów, w których jest wpisana instrukcja podobna do powyższej - po przekierowaniu wyświetla im się "Nie można wyświetlić strony". Podejrzewam, że ma to związek z zabezpieczeniami w sieci firmy - jakimi?

Co powinien ustawić (odblokować) admin w firmie, żeby przekierowania działały?

Czy wina może leżeć po stronie SP-2 dla WinXP?

Pozdrawiam,
K
ActivePlayer
hmmm...


moze uzywaj javascriptowego przekierowania questionmark.gif
dr_bonzo
1. A moze ta strona nie istnieje? Wpisz jej adres do wprzegladarki i sprawdz.
2.
Cytat
a moze to ma byc http a nie https?
ktuvok
Panowie, wybaczcie, ale gdybym chciał przekierowywać poprzez javascript, to nie zawracałbym nikomu głowy...

A strona na którą przekierowuję oczywiście istnieje.

Jakieś inne sugestie?

Pozdrawiam,
K
dr_bonzo
A jaki jest kod bledu 404? inny?
ktuvok
Żaden - "Nie można wyświetlić strony."

K
ARJ
piszesz że większość userów jest z jednej firmy i u nich to niedziała, a czy u userów z innych sieci też jest taki problem czy u nich wszystko działa dobrze.

bo jeśli tylko na tamtej sieci jest jakieś zabezpieczenie (na tym się nieznam) to możesz użyć takiego sposobu: jeżeli używasz header to przeniesienia na stronke po poprawnym wpisaniu hasła to zamias header wyświetl linka poprostu. rozwiązanie może nie pierwsza klasa ale powinno działać.
kszychu
Czy przekierowanie w header masz postaci "/strona.html" czy "http://host/strona.html"? Bo jeśli to pierwsze, to serwer może być źle skonfigurowany i podawać domyślnie złego hosta.
ktuvok
1. System musi działać w SSL'u, więc wywołanie "http://" zamiast "https://" nie może być rozważane.

2. Przekierowania są faktycznie różne. Raz jest podawana pełna ścieżka:

  1. <?php
  2.  
  3. header(&#092;"Location: https://www.domena.pl/katalog/skrypt.php\");
  4.  
  5. ?>


ale w większości przypadków nie ma takiej potrzeby, bo wszystko odbywa się w ramach tego samego katalogu, więc wystarcza:

  1. <?php
  2.  
  3. header(&#092;"Location: innyskrypt.php\");
  4.  
  5. ?>


Który serwer może być źle skonfigurowany - mój, czy serwer firmy korzystającej z systemu? System działa na serwerze wirtualnym i skoro działa dla juzerów spoza firmy, to chyba ustawienia serwera wirtualnego są dobre... Jakie ustawienia mogą być do zmiany po stronie firmy?

I jeszcze jedna ważna rzecz, o której nikt nie napisał - czy to może mieć jakikolwiek związek z SP-2 dla WinXP?

Pozdrawiam,
K
kszychu
Cytat(ktuvok @ 2004-11-23 12:41:19)
Który serwer może być źle skonfigurowany - mój, czy serwer firmy korzystającej z systemu? System działa na serwerze wirtualnym i skoro działa dla juzerów spoza firmy, to chyba ustawienia serwera wirtualnego są dobre... Jakie ustawienia mogą być do zmiany po stronie firmy?

A na którym serwerze to źle działa, na Twoim czy na firmowym?
To, że działa dobrze dla userów spoza firmy, nie znaczy wcale, że będzie działał prwidłowo dla ludzi wewnątrz.
Proponowałbym nie stosować w header krótkich adresów, tylko pełne "https://serwer/...".
To że podałem http zamiast https było tylko przykładem, w ogóle nie proponowałem zamiany protokołu.

Czy może to mić związek z SP-2? Najlepiej byłoby to sprawdzić osobiście. Sprawdź też na innej przeglądarce niż IE.
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.