Apache htaccess重定向,用于从主域加载子域中的特定图像url

Apache htaccess重定向,用于从主域加载子域中的特定图像url,apache,.htaccess,mod-rewrite,url-redirection,mod-alias,Apache,.htaccess,Mod Rewrite,Url Redirection,Mod Alias,我有一个子域(us.example.com)和主域(example.com)。我只想将我的子域url重定向到特定图像的主域。例如,如果我点击http://us.example.com/images/test.jpg然后它应该重定向到http://example.com/images/test.jpg 我尝试301重定向如下,但它不工作 Redirect 301 https://us.example.com/images/test.jpg https://example.com/images/t

我有一个子域(us.example.com)和主域(example.com)。我只想将我的子域url重定向到特定图像的主域。例如,如果我点击
http://us.example.com/images/test.jpg
然后它应该重定向到
http://example.com/images/test.jpg

我尝试301重定向如下,但它不工作

Redirect 301 https://us.example.com/images/test.jpg  https://example.com/images/test.jpg
我也尝试过其他规则,但它们都适用于完整的图像目录,而不是目录下的特定图像

更新 像这样改变了规则-

RewriteCond%{HTTP\u HOST}^us\.example\.com$[NC]
重写规则^/?images/test.jpg$https://example.com/images/test.jpg [R=301,L]

但是运气不好。

from
mod_别名具有以下语法:

Redirect [status] [URL-path] URL
如您所见,它接收/接受URL路径,而不是整个URI/URL进行匹配

对于子域匹配,请使用
指令:

<If "%{HTTP_HOST} == 'us.example.com'">
    RedirectPermanent /imges/test.jpg https://example.com/images/test.jpg
</If>
试试这个伙计

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^us.domain.com$ [NC]
RewriteRule (.*) http://www.domain.com/$1 [R=301,L]
</IfModule>
更新1:

仅适用于test.jpg

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^us.domain.com/images/test.jpg [NC]
    RewriteRule (.*) http://www.domain.com/images/test.jpg [R=301,L]
</IfModule>

重新启动发动机
RewriteCond%{HTTP_HOST}^us.domain.com/images/test.jpg[NC]
重写规则(.*)http://www.domain.com/images/test.jpg [R=301,L]

请粘贴您的.htaccess文件,否则请查看此链接谢谢@Kate我认为此处不需要完整的.htaccess文件。我已经粘贴了我应用的规则。对于你的链接,我已经提到了这个,但它在完整的目录下工作,我只想为单个图像设置规则。嗨@hjpotter,尝试了所有,但没有工作。检查更新的问题。@HelloPython不工作如何?你还有其他规定吗?上面的规则应该出现在htaccess文件的开头。谢谢!!但我只想将其用于单个图像url,而不是我要重定向的所有url。@HelloPython您只想将其用于test.jpg还是所有jpg?@HelloPython检查上面所做的更新,并更新我它是否有效。
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^us.domain.com [NC]
RewriteRule ^(.*)$ http://domain.com/$1 [L,R=301]
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^us.domain.com/images/test.jpg [NC]
    RewriteRule (.*) http://www.domain.com/images/test.jpg [R=301,L]
</IfModule>