我在google上搜索过这里的教程,帮助我重写我的网址。 我希望有人解释我必须写的内容和原因。
我有这个网址:
http://iescup.eu/tournaments.php?tourney[id]=1
http://iescup.eu/tournaments.php?tourney[id]=2
http://iescup.eu/tournaments.php?tourney[id]=3
等等
我想要这个网址:
http://iescup.eu/#!/tourneys/1
http://iescup.eu/#!/tourneys/2
http://iescup.eu/#!/tourneys/3
等等
此致 Rune Naundrup Dahl
答案 0 :(得分:0)
因此,您在浏览器的网址栏中输入http://iescup.eu/tournaments.php?tourney[id]=1
。请求/tournaments.php?tourney[id]=1
将被发送到服务器 iescup.eu 。在该服务器上,这些规则位于文档根目录中的htaccess文件中:
RewriteEngine On
RewriteCond %{QUERY_STRING} ^tourney\[id\]=([0-9]+)$ [NC]
RewriteRule ^/?tournaments.php$ /#!/tourneys/%1? [L,R=301,NE]
匹配%{QUERY_STRING}
变量,数字ID按%1 进行分组和反向引用。规则的目标末尾有一个?
,用于删除查询字符串,并使用NE
标记,因此#
不会被编码。
规则将浏览器重定向到http://iescup.eu/#!/tourneys/1
,从而更改了URL地址栏。浏览器然后向 iescup.eu ,/
发送另一个请求。请注意,#!/tourneys/1
片段永远不会发送到服务器。片段只是客户端,用于确定应如何处理内容(也由javascript使用)。