Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 查询字符串值不等于数字的Apache重写_Php_Apache_.htaccess - Fatal编程技术网

Php 查询字符串值不等于数字的Apache重写

Php 查询字符串值不等于数字的Apache重写,php,apache,.htaccess,Php,Apache,.htaccess,我试图确定Apache重写的正确语法,以便在查询字符串值不等于某个格式时将访问者发送到另一个页面 URL 1:(单向路由) URL 2:(路由不同) 该值的格式应为所有数字\d{0,x},但到目前为止,我尝试的结果似乎都没有达到预期的效果。重写的最新版本如下: RewriteCond %{QUERY_STRING} ^video=[^\d](\d{0,})$ RewriteRule - /

我试图确定Apache重写的正确语法,以便在查询字符串值不等于某个格式时将访问者发送到另一个页面

URL 1:(单向路由)
URL 2:(路由不同)

该值的格式应为所有数字\d{0,x},但到目前为止,我尝试的结果似乎都没有达到预期的效果。重写的最新版本如下:

RewriteCond     %{QUERY_STRING}                 ^video=[^\d](\d{0,})$
RewriteRule     -                               /404.php$1 [NC,L]

使用
以否定规则

RewriteCond     %{QUERY_STRING}  ^video=
RewriteCond     %{QUERY_STRING}  !^video=\d+$
RewriteRule     -                /404.php$1 [NC,L]

这将只重写包含
?video=
的请求,但仅当
=
后面没有数字时才使用
以否定规则

RewriteCond     %{QUERY_STRING}  ^video=
RewriteCond     %{QUERY_STRING}  !^video=\d+$
RewriteRule     -                /404.php$1 [NC,L]

这只会重写包含
?video=
的请求,但前提是
=
后面没有数字,非常感谢。我不确定我是否得到了我想要的,但这肯定会奏效。非常感谢。我不确定我是否得到了我想要的,但它肯定会奏效。