2012-01-23 10 views
0

首先我会告诉你我目前的工作,然后我会告诉你我想发生什么。PHP/HTML>类别,而不是URL中的文件名

主页index.html包含状态列表,用户点击状态并将它们定向到cities.html以选择城市。所以我们现在在http://www.example.com/cities.html?state=florida(或其他)。相反,我想看到的将是http://www.example.com/florida/

我知道这是可能的,但我甚至不知道什么谷歌。我一直在尝试“类别,而不是文件的网址”的变种,并在谷歌等,没有什么是远程关闭。有谁知道这是如何完成的?我知道它是可能的,因为我在其他地方看到过(不使用CMS)。我发现使用它的一个地方是http://surgeonsdelivered.com/

任何帮助表示赞赏。

+0

我不明白你的问题。如果您将主页上的链接设置为您需要的格式,会发生什么情况?它不工作吗? – Borodin

+0

如果我将链接设置为http://www.example.com/iowa/,它将如何知道与其他任何文件(如help.html或其他任何文件)相关的cities.html文件。 –

回答

2

我想我明白了。所以你希望http://www.example.com/xxxx/的所有传入请求被处理,就好像它们是http://www.example.com/cities.html?state=xxxx一样,而不管xxxx是什么。

如果您在Apache上运行,那么可以使用.htaccess配置文件中的mod_rewrite通过RewriteRule来完成。像

的设置
RewriteEngine On 
RewriteRule ^/([^/]+)/?$ /cities.html?state=$1 

应该做的伎俩。

+0

谢谢,看起来你是对的。我正在尝试阅读关于它的内容,并围绕它来包裹我的头。你碰巧知道我需要为RewriteRule完成我想要的东西吗?如果没有,不用担心 - 可能只会节省一个小时的头部撞击;) –

+0

太棒了,我会从那里使用它,再次感谢。我会尽快检查你的回应:) –

+0

我试过你写的东西,但没有成功。难道是因为我在.htaccess文件中还有一个301 Rewriterule? –

相关问题