1

我有一个具有如下查询字符串的 URL:

www.blablabla.com/index.php?page=details&p_name=van-der-var&p_country=holland

我想将 URL 重写为如下所示:

www.blablabla.com/van-der-var-holland.html

我可以做这样的事情:

www.blablabla.com/van_der_var-holland.html

但我需要在名称和其他参数中一起使用相同的符号。可能吗?

我当前的.htaccess文件如下所示:

RewriteRule ^p-([A-Za-z0-9_]+)-([A-Za-z0-9_]+)\.html$ index\.php?main_page=person&p_name=$1&p_country=$2 [L]
4

1 回答 1

1

我想不出一种方法来解决它,在变量和变量中的单词之间使用相同的分隔符,即考虑到您的国家名称可能是 2 个或更多单词。如果国家总是一个词,@faa 的解决方案将满足您的需求。否则,我会建议以下内容:

van_der_var-holland.html

RewriteRule ^([a-zA-Z0-9_]+)-([a-zA-Z0-9_]+).html$ index.php?page=details&p_name=$1&p_country=$2&%{QUERY_STRING}

van-der-var_holland.html

RewriteRule ^([a-zA-Z0-9-]+)_([a-zA-Z0-9-]+).html$ index.php?page=details&p_name=$1&p_country=$2&%{QUERY_STRING}

van-der-var/holland.html

RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+).html$ index.php?page=details&p_name=$1&p_country=$2&%{QUERY_STRING}

或与任何其他分隔符类似的东西,例如逗号。

于 2013-03-17T05:22:16.890 回答