我有 2 个域和 2 个服务器 example.com
和 example2.com
.例如: example.com
是我的主域。我将我的网站图片上传到 example2.com
我当前的图像路径 http://example.com/data/photos/sample.jpg
.
但我所有的图片都在 http://example2.com/data/photos/sample.jpg
所以我创建了 htaccess 301 重定向
RewriteEngine on
RewriteBase /
RewriteRule ^data/photos/(.*)$ http://example2.com/data/photos/$1 [R=301]
但它对我不起作用。因为我在我的所有页面中都调用了完整的 URL。所以任何一个建议都对我很有帮助
更新 我的旧 Htaccess 文件
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?%{QUERY_STRING} [NE,L]
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
RewriteEngine On
RewriteBase /
RewriteRule ^data/photos/(.*)$ http://example2/data/photos/$1 [R=301]
</IfModule>
最佳答案
您需要重新排列规则。你最终的 htaccess 应该看起来像
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^(data/photos/.*)$ http://example2.com/$1 [R=301,NC,L]
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?%{QUERY_STRING} [NE,L]
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
</IfModule>
关于php - 使用 htaccess 将另一个域图像加载到我的域?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28668125/