我是htaccess文件的新手,我了解如何对URL进行基本重写,例如删除index.php,扩展等。我也可以使用$ _SERVER [" PATH_INFO"]来处理跟踪文件的任何内容。
我挣扎的是如何在除了(未显示)index.php之外的其他文件上使用尾随的faux-directory结构来实现这一点。可以说我有
domain.com/render.php/this
我希望它能阅读
domain.com/render/this
我的解决方法目前是在我的index.php文件中执行所有逻辑,但我想将其分解为多个文件,以便我可以index.php
执行我的主页内容,{ {1}}完全不同的东西。
谢谢你的时间。
答案 0 :(得分:1)
这取决于您的整体目录结构。例如,请查看Apache .htaccess to hide both .php and .html extentions。
如果您已将/render/this
配置为转到/render.php/this
,您只需执行重定向操作,然后尝试以下操作:
RewriteEngine On
RewriteCond %{REQUEST_URI} \b\.php\b
RewriteRule ^([^/.])\.php/(.*)$ $1/$2 [R]
(\b
部分在字边界处匹配,根据pcrepattern(3)
,来自pcre
库Apache httpd
为nginx
以及guide用于支持正则表达式。)