www.romver.ru
/ Полный список статей / ЧПУ и понятие URL

Как заказать сайт


АБРАКАДАБРА (Тоже самое но в читаемом виде)

 4PU — eto termin, pridumanniy komandoy NovoKiberska, obozna4aet on «4elovekoponatniy URL». Termin nigde 6iroko ne upotreblalsa, poka a ne napisal 5 sentabra 2000 goda zametku «4PU i PHP». Za eti tri goda termin dovol'no neploxo raskrutilsa.

Za eti godi o4en' mnogie ssilalis' na etu zametku, poetomu a vzal na seba trud perepisat' ee, dobaviv e6e neskol'ko sposobov sdelat' 4PU i ubrav vsakiy musor. Itak…

V principe, ni4ego novogo i original'nogo v idee ponatnogo URLa net. Pro eto pisal i Lebedev, i drugie tovari6i. Voob6e, mne vsegda nravilis' URLi takogo, naprimer, vida: http://php.resourceindex.com/Complete_Scripts/Guestbooks/

Itak, kak eto sdelat' v doma6nix usloviax?

Sposob raz

Voob6e, samaa pervaa misl' — eto sozdavat' dla kajdoy zametki poddirektoriu s sootvetstvuu6im imenem i pome6at' v nee index.html, to est' sdelat' tak, 4tobi po adresu http://spectator.ru/technology/php/user_friendly_urls lejal bi real'niy fayl. Razumeetsa, tak delo ne poydet.

Sposob dva

Dumaem dal'6e. Raz stranica ne su6estvuet, to ona vidaet 404. Tak 4to vtoraa idea — propisat' v fale .htaccess stranicu, kotoraa budet vidavat'sa pri o6ibke 404, a uje eta stranica budet smotret' na teku6iy URL i vidavat' nujniy dokument

To est', v .htaccess pi6em:


------------------------------------
ErrorDocument 404 /index.php3
ErrorDocument 401 /index.php3
------------------------------------


Pol'zovatel' nabiraet http://spectator.ru/technology/php/user_friendly_urls, takaa stranica ne naydena, i zagrujaetsa fayl index.php3. Dal'6e — vse prosto. Peremennaa $REQUEST_URI daet nam adres vizivaemoy stranici (v dannom slu4ae eto budet /technology/php/user_friendly_urls), vivesti na ekran sootvetstvuu6iy dokument — delo texniki.

Etogo malo. V nekotorix brauzerax i s poiskovikami takoy fokus ne proydet: stranica 404 budet vidavat' sootvetstvuu6iy kod, i stranici indeksirovat'sa ne budut. Poetomu nado, 4tobi stranica, kotoraa gruzitsa v slu4ae o6ibki 404, izmenala bi kod o6ibki i signalila, mol, vse OK, est' takaa stranica:

Itogo: propisivaem v .htaccess stranicu, kotoraa, sobstvenno, za vse otve4aet (u mena eto index.php3). V etoy stranice pi6em php-skript, kotoriy rabotaet s $REQUEST_URI, 6let zagolovok «http/1.0 200 Ok» i otobrajaet to, 4to nado.

Plusi: O4en' prostoy sposob. Rabotaet po4ti vezde.
Minusi: Pri takom sposobe nel'za postit' soderjimoe formi na nesu6estvuu6ie psevdourli. I esli v Apa4e vedetsa log 404-ix o6ibok, to on budet zabit.

Sposob tri

Dla etix (i ne tol'ko) celey est' special'niy modul' v Apa4e, kotoriy nazivaetsa mod_rewrite. On pozvolaet «perepisivivat' urli», to est', preobrazovivat' ix «na letu» po pravilam, kotorie vi emu opi6ite.

Eto o4en' mo6niy modul', i esli vi v nem razberetes', to smojete tvorit' 4udesa. Sam a do six por dovol'no malo s nim rabotal, poetomu 4itayte dokumentaciu, blago, 4to ee polno.

Module mod_rewrite URL Rewriting Engine.
A Users Guide to URL Rewriting with the Apache Webserver.
Modul' Apache mod_rewrite.
Mod_rewrite dla 4aynikov.

Plusi: O4en' mo6niy sposob.
Minusi: Mojet ne xvatit' mozgov. Na xostinge mojet bit' ne ustanovlen etot modul'.

Sposob 4etire

Osnovan na direktive FilesMatch, kotoraa v Apa4e avlaetsa core feature. Vse prosto. Pi6em opat' je v .htaccess

Action throw /index.php


ForceType throw


ForceType application/x-httpd-php

Posle etogo vse URLi, kotorie podpadaut pod uslovie «^([^.]+)$», (to est' vse urli, v kotorix ne soderjitsa to4ka) budut peredavat'sa na index.php. Vi mojete napisat' svoe uslovie, razumeetsa.

Podrobnosti: tut, tut ili tut.

Plusi: Prostoy i udobniy sposob.
Minusi: Govorat, 4to dla togo, 4tobi ForceType rabotal, php doljen bit' podklu4en k apa4u v vide modula. Esli php vizivaetsa, kak obiknovenniy CGI — ForceType rabotat' ne budet.
 
vzato s spectator.ru
3
Создание эксклюзивных сайтов, юзибилити анализ и бесплатный анализ под запросы основных поисковых машин
Контактная информация :
тел. +7(98I) 7608865

Написать письмо на e-mail
icq 415547094  romverрейтинг на mail.ru сайта romverinbox.ru
© 1997 - 2024 romver.ru

Полная карта сайта Display Pagerank