【发布时间】:2016-11-04 12:54:35
【问题描述】:
我正在尝试将 url 重写为另一个 url。
因为我已经为我的图像创建了一个子域,我希望所有请求我的图像的 url 都应该进入新的图像域。
例如。
旧图片链接 - http://www.website.com/uploaded/art/sd.jpg 应该到 - http://img.website.com/uploaded/art/sd.jpg
另一个
旧图片链接 - http://www.website.com/uploaded/photo/ss.jpg 应该到 - http://img.website.com/uploaded/photo/ss.jpg
我上传的文件夹中有我的子文件夹。 这是我现在的 htaccess,我似乎无法让它工作。
RewriteEngine on
RewriteRule ^uploaded/(.*)$ http://img.website.com/uploaded/$1 [R=301,L]
# Use PHP5.4 as default
#AddHandler application/x-httpd-php54 .php
<IfModule mod_rewrite.c>
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_URI} ^application.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [QSA,L,NC]
</IfModule>
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 day"
ExpiresByType text/css "access plus 18000 seconds"
ExpiresByType text/plain "access plus 1 month"
ExpiresByType text/javascript "access plus 1 month"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType application/x-javascript "access plus 1 month"
ExpiresByType application/javascript "access plus 18000 seconds"
ExpiresByType application/x-icon "access plus 1 year"
</IfModule>
这个 htaccess 被保存到我的公共 html 文件夹中。我网站的主根目录。
【问题讨论】:
-
当您转到 oldsite/uploaded/foobar 时会发生什么?
-
@starkeen 这将是我的图片的网址。存储位置 ex。如果位置是 www.website.com/uploaded/foobar/img.jpg 它应该从字面上得到 img.website.com/uploaded/foobar/img.jpg 这可能吗?
-
是的。您已经为此制定了规则。究竟是什么不工作?
-
@starkeen 它不起作用。它没有进入新的网址。
-
您的 htaccess 是否位于 /uploads 中?
标签: apache .htaccess mod-rewrite