Değiştirme Başlıkları olmadan PHP Yönlendirme

2 Cevap php

Ben gibi bazı kod üzerinden kullanıcı yönlendirme bir PHP komut dosyası var:

header ('Yer: http://someurl/somepage.php');

Sonra somepage.php ben sayfa isteği geldi belirlemek için $ _SERVER ['HTTP_REFERER'] erişmeye çalışıyorum. Ben bir sayfa başlığı konum yöntemi kullanılarak çağrıldığında $ _SERVER ['HTTP_REFERER'] boş olduğunu bulmak.

Ben hala hedef sayfa $ _SERVER ['HTTP_REFERER'] kullanın böylece ben kullanıcıyı yönlendirmek için kullanabileceğiniz alternatif bir yöntem var mı.

2 Cevap

Yerine Location başlığı gönderme, etiketi ile bir HTML sayfası geri gönderin: Eğer deneyebilirsiniz bir şey

<meta http-equiv="refresh" content="0;url=http://someurl/somepage.php">

<head> bölümünde. Ama ... gerçekten tarayıcı nasıl davranacağına bağlıdır, bu sorunu çözmek olsaydı emin değilim. Değeri $_SERVER['HTTP_REFERER'] tarayıcı kendi takdirine bağlı olarak, göndermek veya göndermemek için ücretsiz Referer isteği başlık geliyor.

Yapabileceğin başka bir şey

header("Location: http://someurl/somepage.php?referer=http%3A%2F%2Fthisurl%2Fthispage.php");

yani, bir sorgu parametresi olarak referer URL göndermek, o zaman $_GET['referer'] olarak erişebilirsiniz. Bu muhtemelen bir referer başlık göndermek için tarayıcınızın güvenmek daha güvenilirdir.

HTTP Referer: başlık sunucusu tarafından kullanıcı aracısı tarafından belirlenen, ve değil. Ben size bir Referans başlık almak sağlamak için yapabileceğim bir şey var emin değilim.