环顾四周后,我没有找到解决办法...我只在vhost上有一个html网站,我把htaccess放在上面。以下是重点:
投资组合:wwwmydomainfr / Photographies.html
照片在灯箱中打开,我可以用分享按钮分享这些照片 例如:wwwmydomainfr / Photos / image1.jpg
我正在寻找的是将人们重定向到 wwwwmydomainfr / Photographies.html 当他们击中 wwwmydomainfr /图片/ image1.jpg
但问题是如果我使用重定向我无法访问照片..."无法加载请求的内容。请稍后重试"
目前:
Error in yaml::yaml.load(enc2utf8(string), ...) :
Scanner error: while scanning for the next token at line 3, column 32found character that cannot start any token at line 3, column 32
Calls: <Anonymous> ... yaml_load_utf8 -> mark_utf8 -> <Anonymous> -> .Call
Execution halted
我试图添加但没有成功:
RewriteEngine On
RewriteCond %{REQUEST_URI} \.(jpg)$ [NC]
RewriteRule ^(.*)/ wwwmydomainfr/Photographies.html [L]
有什么想法吗?
更新
而且,当我最初到达图像的网址时,它不起作用,只有当我再次加载网址时,任何想法?它看起来像是随机的重定向...有时图像也不可用..也许我可以在图像目录中添加一些东西?
最后的代码:
RewriteCond %{HTTP_REFERER} !^http://(www.)?wwwmydomainfr/Photographies.html [nc]
答案 0 :(得分:0)
您尝试使用HTTP_REFERER条件是正确的,因为否则jpeg图像会解析为html文件。没有这个条件请求wwwmydomainfr / Photos / image1.jpg,重定向到wwwwmydomainfr / Photographies.html,我假设图像嵌入了<img ref='wwwmydomainfr/Photos/image1.jpg'>
标签,浏览器尝试检索图像时重定向到html而不是jpeg的来源。
我唯一可以发现你的重写条件不正确的是未转义的点和域名前面的www。试试这个:
RewriteEngine On
RewriteCond %{REQUEST_URI} \.(jpg)$ [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mydomainfr
RewriteRule ^(.*)/ wwwmydomainfr/Photographies.html [L]/Photographies.html [nc]