[PHP] Zmiana url'a

0

Potrzebuje taka rzecz wykonac.
Mam url np. www.cos.pl/aaa/bbb.php i chcialbym zmienic odwolanie do pliku na np. taki url www.cos.pl/ccc/bbb.php.
Wiem, ze to jest wykonalne z poziomu konfigu apacha, z tym, ze na serwerze, na ktorym potrzebuje taka zmiane, mam akurat zablokowana opcje ustawiania przekierowan.
Pytanie czy jest mozliwosc aby to zrobic w php, i jesli tak, to jak? :)
Dziekuje z gory za pomoc.

0

nie wiem, czy dokladnie ciebie rozumiem. jezeli chodzi ci o takie niby prziekierowanie, to wykorzystaj dowiazania symboliczne. nie napisales, czy chodzi ci tylko o pliki php, czy wszystkie. jezeli mowisz o 'przekierowaniu' na kazdy typ pliku, to php nic tu nie pomoze.

0

Z tego co zrozumialem to:

  • zmienna $_SERVER["PATH_INFO"] pobierzesz sobie caly adres
  • pomanipuluj na stringu, wyciagnij element adresu ktory jest Ci potrzebny
  • zmien jego wartosc np. na "ccc"
  • Header("location: nowy_adres");

i po sprawie :).

0

Moze sie niezbyt jasno wyrazilem. Chodzi mi o wszystkie pliki. Location tutaj nic nie zmieni.
Jeszcze raz podam przyklad. Chodzi o wszystkie sciezki widoczne w przegladarce.
Docelowy katalog fizycznie znajduje sie w www.cos.pl/aaa/, chcialbym zrobic cos w rodzaju przekierowania na www.cos.pl/bbb/. Jednoczesnie aby dzialaly mi pliki php, ktore pobieraja dane z formularzy, przy takim przekierowaniu. Np. odwolanie do www.cos.pl/bbb/plik.php?zapytanie wywola www.cos.pl/aaa/plik.php?zapytanie. Jednoczesnie przy podaniu innego pliku np. /bbb/plik.zip przekierowalo na /aaa/plik.zip zeby mozna bylo go pobrac. (choc z tym zip'em nie jest az takie wazne)
po prostu user widzi jedna sciezke a w rzeczywistosci na serwerze pliki sa umieszczone w zupelnie innej.

Szczerze mowiac kompletnie w ciemno zadaje to pytanie, bo nie wiem czy cos takiego da sie wykonac przy pomocy samego php.

0

przy pomocy php sie nie da tego zrobic. mozna wykrzostac dowiazania simboliczne (symlinks). to jest taki linuksowy odpowenik windowsowych skrotow :) w jakis spsob korzystasz z serwera? przez ftp? a masz dostep do ssh? masz linuksa? :)

0
Karolaq napisał(a)

przy pomocy php sie nie da tego zrobic. mozna wykrzostac dowiazania simboliczne (symlinks).

Wydaje mi sie czy skórt to skrót a dowiązanie symboliczne to windowsowy hardlink (dobrze ukryty przed użytkownikami, ale jest ;) ) ?

0
Karolaq napisał(a)

przy pomocy php sie nie da tego zrobic. mozna wykrzostac dowiazania simboliczne (symlinks). to jest taki linuksowy odpowenik windowsowych skrotow :) w jakis spsob korzystasz z serwera? przez ftp? a masz dostep do ssh? masz linuksa? :)

Masz, masz :)
Wyglada na to ze tylko opcja z Rewrite w .htaccess mi pozostaje.
Przetrzepie jeszcze google, moze wkoncu sypna jakas odpowiedzia :)

0

Instrukcja jak wykonać przekierowanie URL za pomocą PHP znajduje się na na naszym blogu https://www.eactive.pl/porady-dla-webdeweloperow/jak-wykonac-przekierowania-adresow-url-za-pomoca-php

3

No prosze. Niezły górnik wykopał blisko 15 letni temat :D

1 użytkowników online, w tym zalogowanych: 0, gości: 1