Nel tuo caso sarebbe meglio creare la pagina normalmente e mettere solo una condizione:
se la pagina di provenienza è X allora visualizza il contenuto
così se uno prova ad accedere alla pagina direttamente non visualizzerà nulla, oppure, un testo che li avverte della non accessibilità.
Per la modifica di url con php si parla di redirect da una pagina ad un'altra, e poi devi sempre passare per una pagina che interpreta e non è un buon metodo, proprio per nulla.
Se vuoi rendere la casualità della pagina una possibilità, puoi "ingannare" l'utente aggiungendo una variabile con numeri casuali che poi non richiami.
Ti basta un rand():

Codice PHP:
$rand=rand(100000,999999);
$link="vinci.php?n=".$rand
e poi usi il link per mandare le persone nella pagina che vuoi.
Così facendo sembrerà che la pagina sia condizionata da quel numero e l'utente, cambiandolo, otterrà la pagina di errore perché la pagina di provenienza non è quella da te specificata.