【发布时间】:2013-05-20 12:24:39
【问题描述】:
在我的网站中有很多丑陋的 URL,现在我需要将它们重写为用户友好的好 URL。
这些是我网站上的一些丑陋的网址:
http://www.mydomain.com/profiles/tutors/index.php?code=1285&name=Ricky+Pointing
http://www.mydomain.com/profiles/centers/index.php?code=2285&name=City+&+Gills
http://www.mydomain.com/about.php
http://www.mydomain.com/contact.php.... and much more
所以我正在寻找对上述丑陋 URL 的用户友好的解决方案,如下所示:
http://www.mydomain.com/tutors/Ricky_Pointing.html
http://www.mydomain.com/centers/City_&_Gills.html
http://www.mydomain.com/about.html
http://www.mydomain.com/contact.html
我在我的 .htaccess 文件中尝试了类似的东西..
RewriteEngine On
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /profiles/tutors/index.php\?code=([0-9]+)&name=([^&]+)&?([^\ ]+)
RewriteRule ^profiles/tutors/index\.php /%1/%2/?%3 [R=301,L,NE]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9]+)/(.+)/$ /profiles/tutors/index.php?code=$1&name=$2 [L,QSA]
但仍然没有运气。 任何人都可以帮我做到这一点吗? 谢谢。
【问题讨论】:
-
你总是可以使用 url shortners。您可以从stackoverflow.com/questions/742013/how-to-code-a-url-shortener找到更多信息
-
我知道,我并不是想将其转换为 mydomain.com/dgGc32G 之类的东西。我的意思是mydomain.com/Ricky_Pointing。你是对的,可以通过向数据库添加另一列并存储缩短的 url 来完成。它不需要实际的网址缩短器。
标签: .htaccess