这是我的htaccess文件:
Options +FollowSymLinks
RewriteEngine On
AcceptPathInfo On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [L,QSA]
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.domain.com/%2 [L,R=301]
这是我的网站结构:
error_log
lib/
mail/
public_html/
www/
access-logs/
etc/
.htaccess
文件位于public_html
内
在public_html
内,我有/assets
,/images
和/uploads
:
规则重定向/ assets和/ images,但是:
http://www.domain.com/uploads/100_100/2014/10/24/5/0/841453939422001907988782-1-100_100.jpg
重定向到www.domain.com。
编辑:从access_log下面输入:
ip - - [24/Oct/2014:17:54:37 +0300] "GET /uploads/100_100/2014/10/13/d/2/80550090151440232989044-1-100_100.jpg HTTP/1.1" 301 20 "http://www.domain.com/" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Ch$
任何想法为什么?
答案 0 :(得分:0)
问题似乎出现在您的重定向规则中:
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [NE,L,R=301]
同时将此规则保留在RewriteBase
行的下方。