在URL和.htaccess中使用空格

时间:2011-02-01 20:18:08

标签: .htaccess url-rewriting

我为我的城市写了一个本地名称/电话/地址搜索引擎。

用户必须能够通过以下任一网址快速访问结果:

  1. 按号码搜索
  2. 按姓氏搜索
  3. 按姓氏和名字搜索
  4. 这是我目前的.htaccess配置:

    # Smart links
    RewriteRule ^([0-9]+)$ /html/index.php?phone=$1 [QSA,L]
    RewriteRule ^([A-Za-z-]+)$ /html/index.php?lastname=$1 [QSA,L]
    RewriteRule ^([A-Za-z-]+)/([A-Za-z-]+)$ /html/index.php?lastname=$1&name=$2 [QSA,L]
    

    除非用户在姓氏和/或名字中包含空格,否则效果非常好。此外,搜索名称时不能使用任何数字。

    有关如何在网址中留出空格的任何想法?谢谢!

2 个答案:

答案 0 :(得分:13)

你能试试吗? ([a-z-\s]+)

RewriteRule ^([0-9]+)$ /html/index.php?phone=$1 [QSA,L]
RewriteRule ^([A-Za-z-\s]+)$ /html/index.php?lastname=$1 [QSA,L]
RewriteRule ^([A-Za-z-\s]+)/([A-Za-z-\s]+)$ /html/index.php?lastname=$1&name=$2 [QSA,L]

答案 1 :(得分:1)

RewriteRule ^([A-Za-z-\s]+)/([A-Za-z-\s]+)$ /index.php?lastname=$1&name=$2 [QSA,L]

\ s将处理空格。