我使用指令。htaccess
<IfModule mod_rewrite.c>
RewriteCond %{QUERY_STRING} !^$
RewriteCond %{QUERY_STRING} !(^|&)appId=
RewriteCond %{QUERY_STRING} !(^|&)q=
RewriteRule ^(.+?)\\.html$ https://%{HTTP_HOST}/$1.html? [L,R=301]
</IfModule>
如果
RewriteCond %{QUERY_STRING} !^$
替换为此
RewriteCond %{THE_REQUEST} \\?
但是这个指令not work 在Litespeed服务器上。当然,我联系了这个服务器的开发人员。
如何剪切(重定向)到没有问号的链接via 作用php?
示例:如果打开website.com/post-name.html? &燃气轮机&燃气轮机&燃气轮机;重定向(>)&燃气轮机&燃气轮机;website.com/post-name.html
对不起,我的英语不好。
最合适的回答,由SO网友:Sally CJ 整理而成
试试这个,它使用parse_request
hook: (您可以添加其他条件,例如检查$wp->query_vars[\'name\']
如果要,则不为空)
add_action( \'parse_request\', \'wpse_400900_parse_request\', 1 );
function wpse_400900_parse_request( $wp ) {
// Redirect if the URL ends with a ? like https://example.com?
if ( ! empty( $_SERVER[\'REQUEST_URI\'] ) &&
ltrim( $_SERVER[\'REQUEST_URI\'], \'/\' ) === "{$wp->request}?"
) {
wp_redirect( home_url( $wp->request ) );
exit;
}
}