Nat*_*ivi 2 php apache .htaccess mod-rewrite redirect
我有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]
Run Code Online (Sandbox Code Playgroud)
但它不适合我.因为我把完整的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>
Run Code Online (Sandbox Code Playgroud)
用这个改变它
RedirectMatch 301 ^/data/photo/ http://example2.com/data/photo/
Run Code Online (Sandbox Code Playgroud)
为整个目录创建一个 301。
您需要重新排序规则.你最后的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>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3455 次 |
| 最近记录: |