我的软件支持多个域名,所有域名都指向服务器上的同一目录(当然每个域名都有不同的数据库)。那么这些域...
www.example1.com
www.example2.com
www.example3.com
……都指向……
/public_html/
在图像目录中...
/public_html/images/
我有与每个网站的主机名完全匹配的目录:
/public_html/images/www.example1.com/
/public_html/images/www.example2.com/
/public_html/images/www.example3.com/
我试图让 Apache 重写请求,这样如果您直接查看图像并查看地址栏,您只能看到一次主机名。
所以请求...
http://www.example1.com/images/book.png
...由 Apache 获取...
/public_html/images/www.example1.com/book.png
我在不同情况下尝试过并取得成功的事情之一如下,尽管它在这种情况下不起作用:
RewriteRule ^[^/]*/images(.+) images/%{HTTP_HOST}/$1
尝试将以下内容添加到.htaccess
文件位于您网站的根目录中 (public_html)
RewriteEngine on
RewriteBase /
#prevent looping from internal redirects
RewriteCond %{ENV:REDIRECT_STATUS} !200
#only rewrite gif, jpg or png
RewriteRule ^(images)(/.+\.(gif|jpg|png))$ $1/%{HTTP_HOST}$2 [L,NC]
你的规则
RewriteRule ^[^/]*/images(.+) images/%{HTTP_HOST}/$1
没有工作,因为你有一个领导/
before images
。在 .htaccess 中领先/
已被删除,因此该规则永远不会匹配。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)