Php 如何使用mod_rewrite将特定URL重定向到特定页面?

Php 如何使用mod_rewrite将特定URL重定向到特定页面?,php,apache,mod-rewrite,Php,Apache,Mod Rewrite,我想将localhost/website/setup重定向到localhost/website/setup.php 这是当前使用的mod_重写规则: RewriteRule ^setup/$ setup.php [L] 这用于将localhost/website/setup/重定向到localhost/website/setup.php。但是,一旦删除尾随斜杠,它就不再工作,它会将我重定向到localhost/setup/,即使我没有在重写规则中添加尾随斜杠。我做错了什么?这部分^setup/

我想将localhost/website/setup重定向到localhost/website/setup.php

这是当前使用的mod_重写规则:

RewriteRule ^setup/$ setup.php [L]
这用于将localhost/website/setup/重定向到localhost/website/setup.php。但是,一旦删除尾随斜杠,它就不再工作,它会将我重定向到localhost/setup/,即使我没有在重写规则中添加尾随斜杠。我做错了什么?

这部分^setup/$是正则表达式,所以您可以这样做

RewriteRule ^setup/*$ setup.php [L]

就我所见,这只允许我在尾部斜杠之后添加更多内容,但我希望能够一起删除尾部斜杠。*与前面的项匹配0次或更多次。因此,您可以在一行中有许多斜杠,并且它仍然匹配,但它也应该允许您完全没有斜杠。如果您愿意,您可以执行类似^setup/|$的操作,并且在结尾处只会有/或没有斜杠。嗯,显然,一旦它将setup/重定向到错误的位置,每当我更新重写规则时,它都会失败-这就是我认为它不起作用的原因。当我使用其他别名而不是安装它的作品,所以谢谢!