我有一个像example.com这样的域,根目录是web。 我创建了一个子域happy.example.com,其中目录位于名为happy的web文件夹之外,并将其连接到happy.example.com。
我的网页树看起来像
happy
web/images
因此根目录的所有图像都存储在(web / images)
中example.com/images
因此,图像的完整路径可以是
example.com/images/me.png
现在我创建了一个我称之为的Sudbdomain:
happy.example.com
我想做的是如果我输入
happy.example.com/images/me.png
然后我应该能够看到这张照片。
所以我需要将所有图像文件夹链接到web中根目录的子域。
我希望你们有我的问题。
我想我应该有一个htaccess文件,包含所有有趣的东西在快乐文件夹中?
Cheerz
答案 0 :(得分:2)
由于两个域的两个文档根目录不相互连接(一个在另一个内部或相同),因此您需要重定向或代理,或者使用脚本。
要重定向最简单,但它会更改浏览器位置栏中的网址:
Redirect 301 /images http://example.com/images
或使用mod_rewrite:
RewriteEngine On
RewriteRule ^images/(.*)$ http://example.com/images/$1 [L,R=301]
要代理,您需要加载mod_proxy,如果您使用的是虚拟主机或托管服务,情况并非总是如此。但是你可以使用mod_rewrite中的P
标志来执行此操作:
RewriteEngine On
RewriteRule ^images/(.*)$ http://example.com/images/$1 [L,P]
最后一个选项是将所有图像请求路由到脚本,如php脚本或其他东西。脚本本身返回图像:
RewriteEngine On
RewriteRule ^images/(.*)$ /load_image.php?image=$1 [L]
那么你会有类似的东西:
<?php
header("Content-type: image/jpeg");
readfile('../web/images/' . $_GET['image']);
?>
显然,您需要检查扩展程序并根据图像类型返回正确的内容类型。