में संग्रहीत छवियों को प्रदर्शित करें मैं Laravel 5.1 का उपयोग कर वेबसाइट के लिए एक छवि अपलोडिंग फ़ंक्शन कर रहा हूं। सुरक्षा समस्याओं के कारण, मैं उन छवियों को /storage/app
फ़ोल्डर में /public
के बजाय स्टोर करना चाहता हूं। उदाहरण के लिए छवि का यूआरएल,:लैरवेल 5.1 - स्टोरेज फ़ोल्डर
http://app.com/image/<image_name>
छवि अनुरोधों को दर्शाने के /storage
लिए:
Route::controllers([
'image' => 'Frontend\ImageController',
]);
/storage/app/images/<image_name>
आदेश /storage/app
से छवि पाने के लिए, मैं इस के लिए एक विशिष्ट मार्ग की स्थापना
ImageController
में, यहां प्रतिक्रिया बनाने के लिए कोड है:
public function missingMethod($filename = [])
{
if (is_array($filename)) {
$filename = implode('/', $filename);
}
// storage_path('app') - path to /storage/app folder
$path = storage_path('app') . '/' . $filename;
$file = \File::get($path);
$type = \File::mimeType($path);
return \Response::make($file,200)
->header("Content-Type", $type);
}
मेरी समस्या है, छवियों को पुनर्प्राप्त करने के लिए इस मार्ग का उपयोग करने के बाद, मैं उन्हें अपने दृश्य में प्रदर्शित नहीं कर सकता। कोई 404, 500 या कोई त्रुटि स्थिति कोड नहीं था, अनुरोध यूआरएल होना चाहिए था, लेकिन यह सिर्फ टूटा हुआ छवि आइकन दिखाया गया था। क्या मेरे कोड के साथ कुछ गलत है?
धन्यवाद!
संभवतः डुप्लिकेट [लैरवेल 5 - दृश्य के भीतर भंडारण में अपलोड की गई छवि का उपयोग कैसे करें?] (Http://stackoverflow.com/questions/30191330/laravel-5-how-to-access-image-uploaded-in- स्टोरेज-इन-व्यू) – Bogdan
मैंने कोशिश की लेकिन छवि को प्रदर्शित नहीं किया जा सकता है, जैसा ऊपर बताया गया है – xlKD
क्या फ़ाइल HTTP सर्वर द्वारा पढ़ी जा सकती है? क्या कोई कारण है कि आपने 'missingMethod' विधि में छवि हैंडलिंग लागू की है? चूंकि वह विधि एक तर्क स्वीकार करती है और यह पैरामीटर की एक सरणी है, न कि '$ filename' जैसा कि आपने इसे परिभाषित किया है। क्या आपने प्रतीकात्मक लिंक दृष्टिकोण की कोशिश की है? – Bogdan