.htaccess htaccess -重写网址

4dc9hkyq  于 2022-11-25  发布在  其他
关注(0)|答案(2)|浏览(132)

如何重写URL:

http://example.com/file_name

至:

http://example.com/depictions/file_name.html

例如:http://example.com/applicationhttp://example.com/depictions/application.html

avkwfej4

avkwfej41#

如果我们假设file_name不能包含 * dot *(这会立即排除对通常包含文件扩展名的真实的文件的任何请求--扩展名由 dot 分隔),那么在优化方面会更容易一些。然后,您可以使用mod_rewrite执行如下操作:

RewriteEngine On

RewriteCond %{DOCUMENT_ROOT}/depictions/$0.html -f
RewriteRule ^[\w-]+$ depictions/$0.html [L]

这实际上将file_name限制为字符0-9a-zA-Z_(下划线)和-(连字符),如正则表达式字符类[\w-]所示。因此,这只检查对文档根目录中“files”的请求(即,不允许斜线)。
这也会在发出内部重写之前测试Map的目的.html档案是否存在。
$0反向引用包含与RewriteRule * 模式 * 匹配的完整URL路径。

v64noz0r

v64noz0r2#

对于每个file_name

RewriteEngine On
RewriteRule ^(.+) depictions/$1.html [L]

相关问题