我有 2 个域,每个域都有自己的文档根目录。一个域的根目录包含我希望通过另一个域访问的文件夹 pics 和 docs。因此 domain1.com/pics/house.jpg 和 domain2.com/pics/house.jpg 将显示相同的图像。
以下是域 2 配置文件的摘录。它不起作用 - 访问域 2 上的域 1 根目录中的图像时,我总是得到 404。我欢迎任何关于如何重写它以修复它的建议。谢谢
root /home/admin/domain2.com/html;
index index.php index.html;
location /pics/ {
root /home/admin/domain1.com;
}
location /docs/ {
root /home/admin/domain1.com;
}
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
答案1
事实证明,当 /pics/ 包含更多文件夹时,我的代码不起作用。使用以下方法有效。
location ^~ /pics/ {
root /home/admin/domain1.com;
# Queries beginning with /pics/ and then stops searching.
}