我想为我的网站上的图像上传器执行.htaccess重写,但是对于我尝试过的所有教程,我无法使其正常工作。
目前,我已将代码上传到该文件夹:
http://www.example.com/server/php/files/jkgh4f54.jpg
我想重写一下,所以当您转到此网址时:http://www.example.com/jkgh4f54.jpg
它会显示上述位置的图片。
有什么想法?正如我所提到的,到处都有很多关于类似内容的教程,但到目前为止我还没能让它适应我的工作。
当前.htaccess:
RewriteEngine On
RewriteCond %(REQUEST_FILENAME} !-f [OR]
RewriteCond %(REQUEST_FILENAME} !-d
RewriteRule ^[a-zA-Z0-9]+\.(jpe?g|png|gif|bmp)$ /server/php/files/$0 [L]
RewriteRule ^([a-zA-Z0-9]+)$ index.php?code=$1 //For URL Shortener
ErrorDocument 404 http://localhost/site.com/404.php
答案 0 :(得分:1)
使用此代码,当用户访问http://example.com/h3h2js.jpg
时,他们会看到来自http://example.com/server/php/files/h3h2js.jpg
的图片,但浏览器中的网址将保持不变:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f [OR]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^[a-zA-Z0-9]+\.(jpe?g|png|gif|bmp)$ /server/php/files/$0 [L]
我已经在Windows上彻底安装了XAMPP,彻底测试了这段代码。图像名称必须仅包含两种情况的字母数字字符(a-z,A-Z,0-9),并且必须以jpg,jpeg,png,gif或bmp文件扩展名结尾。如果请求的图像文件已存在于站点根目录中,则不会进行重写
答案 1 :(得分:0)
尝试:
RewriteEngine on
RewriteRule ^(.*)\.jpg$ http://site.com/server/php/files/$1\.jpg [R=301,L]