Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.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
.htaccess htaccess重写2种不同样式的URL_.htaccess - Fatal编程技术网

.htaccess htaccess重写2种不同样式的URL

.htaccess htaccess重写2种不同样式的URL,.htaccess,.htaccess,我有两种不同风格的URL(如下) 我想将它们都重定向到domain.com/blog/post/post name或domain.com/blog/post/123 目前,我正在使用: RewriteCond %{REQUEST_URI} post/([^.]+)$ RewriteRule ^(.*)$ https://www.itl.uk.net/blog/$1 [R,L] 它重定向了第一个URL,但我不确定如何包括重定向这两个URL的规则您可以在shop/.htaccess,中找到这些规则

我有两种不同风格的URL(如下)

我想将它们都重定向到
domain.com/blog/post/post name
domain.com/blog/post/123

目前,我正在使用:

RewriteCond %{REQUEST_URI} post/([^.]+)$
RewriteRule ^(.*)$ https://www.itl.uk.net/blog/$1 [R,L]

它重定向了第一个URL,但我不确定如何包括重定向这两个URL的规则

您可以在
shop/.htaccess
中找到这些规则,就在
行的
重写引擎下方:

RewriteEngine On

# to handle /shop/post/post-name
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^post/.+$ /blog/$0 [L,NC,R=301,NE]

# to handle /shop/?p=123
RewriteCond %{QUERY_STRING} ^p=(\d+)$ [NC]
RewriteRule ^/?$ /blog/post/%1? [L,NC,R=301,NE]

/shop/
是真实的目录吗?是的,它是真实的
RewriteEngine On

# to handle /shop/post/post-name
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^post/.+$ /blog/$0 [L,NC,R=301,NE]

# to handle /shop/?p=123
RewriteCond %{QUERY_STRING} ^p=(\d+)$ [NC]
RewriteRule ^/?$ /blog/post/%1? [L,NC,R=301,NE]