-2

我如何从这个重写网址

domain.tld/blogs.php?user=username&post=postname

对此:

用户名.domain.tld/posts/postname

4

1 回答 1

0
  1. 确保内容中的所有链接如下所示:username.domain.tld/posts/postname

  2. 在 DNS 中创建通配符 CNAME,以便任何子域都指向托管的服务器domain.tld,并且它们都共享相同的文档根。

  3. 将这些规则添加到文档根目录中的 htaccess 文件中:

    RewriteEngine On
    RewriteCond %{HTTP_HOST} !^(www\.) [NC]
    RewriteCond %{HTTP_HOST} ^([^.]+)\.domain\.tld$ [NC]
    RewriteRule ^posts/([^/]+)/?$ /blogs.php?username=%1&post=$1 [L]
    
    RewriteCond %{THE_REQUEST} ^(GET|HEAD)\ /blogs\.php\?user=([^&]+)&post=([^\ ]+))
    RewriteRule ^ http://%2.domain.tld/posts/%2 [L,R=301]
    
于 2013-04-28T06:18:20.607 回答