I okunabilir URL'ler nasıl yapabilirim?

2 Cevap php

Bana kullanıcı adı nerede olduğunu, http://example.com/user/me url var varsayalım. Kullanıcı türleri adres çubuğuna url, ben kullanıcı ayrıntıları ortaya istediğinizde. Böyle http://example.com/user.php?user=me olarak adresler istemiyorum

Herhangi bir yardım LAMP üzerinde çalışıyor, takdir

2 Cevap

Bunu yapmanın bir yolu, apache's module mod_rewrite denir kullanıyor. Daha sonra /user/([a-z]+) /user.php?user=$1 işaret etmek için adresler yazabilirsiniz

Ayrıntılar için mod_rewrite için belgelerine arayın.

En basit yolu (sunucu yapılandırmasında veya vhosts yapılandırmasında, {[) 0 (]} olarak) olacaktır:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

Bu bir dosya, dizin veya index.php için sembolik bir bağlantı eşleşmiyor bütün isteklerini iletecek. Orada ne yapacağını belirlemek için istek URI inceleyebiliriz. Aslında alınmalıdır ne yapacağını belirlemek için URL yapısızlaştırmak bilen memuru çeşit gerekir. Aslında bu bazı MVC uygulama neden olabilir - ama bu bir gereklilik değil.