你好,我的wordpress目录中的图像有问题,插件没有太多的支持,我已经修复了大部分比特但图像。我知道必须改变root中的.htaccess,但我不确定如何。
看看我现在的.htaccess看起来像什么:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
我的网站没有加载插件中的图片,当检查chrome上的源代码时,它会在下面的URL中查找图像,这会产生404错误。
图片的正确网址为:
http://www.example.com/wp-content/plugins/wprx/wpt_image.php?i=/wp-content/wpt_cache/7/1713/01.jpg
有关更改.htaccess以从网址开头删除“http://www.example.com//”的任何想法吗?
非常感谢, 皮特
答案 0 :(得分:2)
虽然您所要求的是可能,但您不应选择此解决方案,而应找到并解决问题的原因。
因为浏览器仍然在寻找
http://www.example.com//http://www.example.com/wp-content/plugins/wprx/wpt_image.php?i=/wp-content/wpt_cache/7/1713/01.jpg
之后,你只会提供一个文件。
在传递给.htaccess文件的路径中,协议,主机和端口已经被剥离,让你离开
//http://www.example.com/wp-content/plugins/wprx/wpt_image.php?i=/wp-content/wpt_cache/7/1713/01.jpg
所以你真的要删除第二个 http://www.example.com
在RewriteBase
之后放置以下行应该使它有点工作:
RewriteRule ^//http://www.example.com/(.*)$ /$1
答案 1 :(得分:0)
你可以拥有这样的htaccess:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
# fix images path
RewriteCond %{REQUEST_URI} (http://.+?\.(?:jpe?g|gif|bmp|png))$ [NC]
RewriteRule ^ %1 [L,R=301,NE]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress