Doğrudan özel PHP ile sunucuya yüklenen görüntüler için tamam bir görüntüye bağlayan mı?

5 Cevap php

Böyle http://www.somedomain.com/images, bu istemci görüntünün direkt adresi (örneğin almak için izin vermek iyi bir fikir gibi bir dizine bir PHP komut dosyası (üzerinden sunucuya yüklenmiş olan bir görüntü dosyası (JPEG) http://www.somedomain.com/images/someimage.jpg (örneğin TinyMCE gibi) bir WYWSIWYG metin düzenleyiciye yapıştırın?

Doğrudan adres şifreli tercih edilebilir bir yöntem olup olmadığını merak ediyorum?

, Ben sadece görüntü doğrudan bağlantı gerekiyorsa, sadece söyle lütfen.

Teşekkürler!

Note: I have modified this question from my original. Please see revisions if you are curious, but I think I was asking the question incorrectly. My apologies to the people who already answered.

5 Cevap

Sürece tarih ediliyor NE doğru kontrol gibi, bu bir sorun olmamalı. Yani en azından emin yüklendiği varlık bir görüntü var yapmak için getimagesize ya da benzer bir işlevi kullanmak, VE bu PHP tercüman aracılığıyla çalıştırın asla böylece dosya üzerinde uzantısının doğru olduğundan emin olun - önlemek için bağlı bir PHP komut dosyası ile bir resim yükleme birisi.

http://www.scanit.be/uploads/php-file-upload.pdf: MEZUNLARI İşte yüklenenler ve güvenlik güzel bir whitepaper bulunuyor

Web-hosting hizmeti CPU Kısıtlamaları bağlı olarak sizin kullanıcılara görüntüleri 'hizmet' için bir servis yazabilirsiniz.

Here is some very BASIC code, it needs spiffing up and cleaning up for XSS/etc...

<?php
$basePath = "/path/to/my/image/store/not/web/accessible/";
$file = NULL;
if (isset($_GET['file']))
  $file = $_GET['file'];

if ($file != NULL)
{
   $path = $basePath . $file; 
   // $file needs to be checked for people 
   // trying to hack you, but for the sake of simplicity
   // i've left it out

   $mime = mime_content_type($path);
   $size = filesize($path);
   header("Content-Length: " . $size);
   header("Content-Type: " . $mime);
   header('Expires: 0');
   readfile($path); // Outputs the file to the output buffer
}
?>

Açıkçası burada istediğiniz ne olursa olsun güvenlik kontrolleri koyabilirsiniz. Ama bu yolu dosyalarınızı web dir altında, ve sen onların DÇH mantığı uygulayabilirsiniz. Bu typically Görüntüler vs Dosya için daha fazla kullanılır, ama burada aynı şeyi yapabilirim.

Böyle erişildi Görüntüler

http://www.mysite.com/image.php?file=hello.jpg

Ve mod_rewrite bu gibi adresler yeniden yazmak için kullanabilirsiniz:

`Http://www.mysite.com/images/hello.jpg

Ilk url içine.

I Cannot stress enough the need for further security checking in the above example, it was intended to show you how to serve a file to the user using PHP. Please don't copy & use this verbatim.

Wordpress görüntüleri için doğrudan bağlantılar kullanır. Permalink işlevi sadece yorum için meta ile birlikte bir sayfada görüntüyü koyar, ancak görüntüleri 'SRC hareketsiz görüntüye doğrudan bağlantı bağlıyor.

why are you concerned about revealing your image location. Hotlinking? if so you can prevent hotlinking with htaccess

http://altlab.com/htaccess_tutorial.html

Didn't you get your answer already?
Every site reveals image location to the browser. It's just the way web works.

Özgün konumu "şifrelemek için" herhangi bir neden var mı?