【发布时间】:2021-07-01 18:30:48
【问题描述】:
<a href="sky.php?c=something&id=9&s=anything">sky</a>
something, 9, anything 是变量
在地址栏中我想看到这个:...host/something/9/anything
所以 - 根本没有sky.php
反向规则 - 从漂亮到丑陋 - 已解决 - 但如果您有任何通知 - 请这样做:
RewriteRule ^([^/]*)/([^/]*)/([^/]*)$ /sky.php?c=$1&id=$2&s=$3 [L]
【问题讨论】:
-
欢迎来到 SO 并感谢您的努力,所以这意味着您在浏览器中点击
http://localhost:80/sky.php?c=something&id=9&s=anything之类的网址对吗? -
@RavinderSingh13 - 嗯...我在 localhost 上有这个站点,但
.htaccess文件只在远程服务器上,所以所有规则都应该对example.com/sky.php...有效 -
好的,您能否确认您要点击以下网址:
http://localhost:80/sky.php?c=something&id=9&s=anything,应在浏览器中更改为http://localhost:80/something/9/anything,但仍应在后端由http://localhost:80/sky.php?c=something&id=9&s=anything提供服务?我在吗,请确认一次。 -
@RavinderSingh13 - 如果我不清楚,请原谅。请忘记本地主机。
.htaccess仅在远程服务器上。您的代码中的所有其他内容都是正确的,只需将localhost:80替换为example.com -
你好维加斯,我已经在一个答案中回复了这个问题,你可以在答案的评论部分评论更多关于它的讨论,谢谢。
标签: apache .htaccess mod-rewrite url-rewriting friendly-url