Jak usunąć z adresu url człon "index.php?" oraz nazwę site access'ów i w efekcie otrzymać czytelne i proste odnośniki na stronie?
Przechodząc proces instalacji eZ z wykorzystaniem plain site'u otrzymujemy dwa siteaccesy o nazwach:
plain_site
który prowadzi do naszego frontend'u, oraz:
plain_site_admin
który jest naszym backend'em bądź jak kto woli, panelem administracyjnym.
Domyślnie skonfigurowany eZ Publish w takiej postaci, będzie nam generował odnośniki w postaci:
http://localhost/index.php?plain_site/Jakis-nasz-node
http://localhost/index.php?plain_site/Kolejny/Zagniezdzony/Odnosnik-do-czegos
http://localhost/index.php?plain_site_admin/
Powyższe odnośniki, mimo, iż ocierają się o przyjazne linki to posiadają 2 niepotrzebne elementy, które tylko wydłużają adres url. W pierwszej części artykułu, który właśnie czytasz, usuniemy z linków człon:
index.php?
oraz zamienimy domyślną nazwę naszych siteacces'ów na coś bardziej intuicyjnego. Ostatecznie nasze linki będą wyglądać tak:
http://localhost/pl/Jakis-node
http://localhost/admin
Aby uzyskać wspomniany efekt musimy wykonać następujące kroki:
Zmieniamy nazwę katalogu wybranego przez nas siteacces'a.
Wchodzimy na serwer na którym stoi nasz eZ Publish, przechodzimy do katalogu:
settings/siteaccess
domyślnie znajdować się tam będą katalogi:
admin
plain_site
plain_site_admin
setup
Dla przykładu zainteresujemy się tylko frontendowym siteacces'em, zmienimy jego nazwę na skrót który oznajmi uzytkownikowi, iż przegląda witrynę w jezyku polskim:
pl
Zatem teraz, w settings/siteaccess, mamy wyświetlone następujące katalogi:
admin
pl
plain_site_admin
setup
Edytujemy odpowiednie pliki ini (usunięcie index.php z adresu).
W settings/siteaccess/pl/site.ini.append.php:
Zamieniamy wszystkie wartości atrybutów, które zawierają starą nazwę - po edycji powinniśmy otrzymać mniej więcej takie wpisy w sekcji [SiteAccessSettings]:
[SiteAccessSettings] RelatedSiteAccessList[]=pl RelatedSiteAccessList[]=plain_site_admin
W settings/override/site.ini.append.php:
Włączamy opcję wirtualnych hostów oraz również zmieniamy nazwę siteacces'a. Całość w sekcji [SiteAccessSettings] powinna wyglądać mniej więcej tak:
[SiteAccessSettings] ForceVirtualHost=true CheckValidity=false AvailableSiteAccessList[]=pl AvailableSiteAccessList[]=plain_site_admin MatchOrder=uri HostMatchMapItems[]
Wchodzimy do panelu administratora - ponieważ tego siteaccess'a nie ruszaliśmy, jego nazwa nie uległa zmianie, jednak pamiętajmy, iż poprzez ustawienie opcji ForceVirtualHost na true, pozbyliśmy się członu index.php? z każdego wygenerowanego przez eZ odnośnika. Zatem nasz odnośnik do panelu powinien wyglądać teraz mniej więcej tak:
http://localhost/plain_site_admin
W panelu wykonujemy dwie (trzy) ostatnie czynności.


To wszystko! W drugiej części artykułu, spróbujemy przepisać linki w jeszcze ciekawszy sposób. Druga część niebawem!