您尚未指定您使用的 HTTP 服务器。假设您使用的是 Apache,您可以通过在适当的 .htaccess 文件中clean URLs
配置扩展来创建。mod_rewrite
例如,这是Drupal在其 .htaccess 文件中所做的:
<IfModule mod_rewrite.c>
RewriteEngine on
# Pass all requests not referring directly to files in the filesystem to
# index.php.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
# Rewrite URLs of the form 'x' to the form 'index.php?q=x'.
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
</IfModule>
您可以使用类似的规则将“lang”(和任何其他)参数作为 URL 的一部分传递。因此,通过适当配置的重写规则,这样的 URL:
http://something.com/?foo=1&bar=2&baz=3
可能变成:
http://something.com/1/2/3
它本质上将 URL 的第一部分分配给 ,第二部分分配给 ,第三部分foo
分配bar
给baz