如何使用.htaccess将两个url重定向到同一个文件?

时间:2012-10-20 21:10:39

标签: php .htaccess mod-rewrite multilingual

这是我的问题,我有一个双语网站,我不知道如何管理网址。

我想

  • mydomain.tld / contact-us mydomain.tld / nous-contacter 以显示 contact-us.php
  • mydomain.tld / pricing mydomain.tld / prix 以显示 pricing.php
  • mydomain.tld / pricing / item1 mydomain.tld / prix / item1 以显示 pricing.php?what = item1 (适用于这一个我不知道如何处理,任何提示都很感激。)

我可以轻松地完成第一和第二种情况:

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([^/\.]+)/?$ $1.php [R] # R for debug, make sure it shows the right page

但我不希望5页有10个条目,这不是一种安全的方法。

如果(也许)我可以做一些事情(例如:contact-us | nous-contacter)作为一个条件,那将是很棒的。仍然不确定这是否可能,如果是,如果它是最简单和最安全的方式。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

RewriteBase /
RewriteRule ^(contact-us|nous-contacter)$ contact-us.php [R]
RewriteRule ^(pricing|prix)$ pricing.php [R]
RewriteRule ^(pricing|prix)/(.*)$ pricing.php?what=$2 [R]