.htaccess 需要使用带参数的htaccess重定向url的最后一部分

np8igboo  于 2022-11-16  发布在  其他
关注(0)|答案(1)|浏览(94)

RewriteRule #htaccess我有一个网址,例如:www.example.com/path1/path2/pdfname.pdf。我需要重定向此网址到另一个与pdf名称没有pdf扩展名一样(pdfname)。重定向网址应该是www.example.com/path3/viewpdf.php?param=pdfname。将感谢您的帮助,谢谢。

72qzrwbm

72qzrwbm1#

假设“path1”、“path2”和“path3”都是固定的文字字符串,这可能就是您要查找的内容:

RewriteEngine on
RewriteRule ^/?path1/path2/(.+)\.pdf$ /path3/viewpdf.php?param=$1 [L]

这会保持URL在浏览器中的可见性不变,这通常是所需的。
该规则同样适用于中央http服务器的主机配置(通常首选),或者如果您无法访问该配置,则可以在 distributed 配置文件(通常称为.“htaccess”)中使用。在后一种情况下,该文件需要能够被http服务器进程读取,并且必须位于正在处理的http服务器主机的DOCUMENT_ROOT文件夹中。
如果您不想进行内部重写,而是想 * 重定向 * 请求(因此更改浏览器中实际可见的URL),那么该变体应该执行以下操作:

RewriteEngine on
RewriteRule ^/?path1/path2/(.+)\.pdf$ /path3/viewpdf.php?param=$1 [R=301,L]

同样,如果域名(http主机名)或协议方案保持不变,则不必指定它们。

相关问题