راکت
حل شده

استفاده از sftp برای ذخیره اطلاعات

5 پاسخ

سلام من میخوام فایل هام رو با sftp به سرور دیگه ای ارسال کنم و از اونجا بخونم. متاسفانه داکیومنت لاراول برام واضح نبود و جای دیگه راه حلی برای مشکلم پیدا نکردم
داخل filesystems.php

        'sftp' => [
            'driver' => 'sftp',
            'host' => env('SFTP_HOST'),
            'username' => env('SFTP_USERNAME'),
            'password' => env('SFTP_PASSWORD'),
            'root' => '/var/www/html',
//            'port' => 22
        ],

بعد از اون داخل کنترلر این خط رو گذاشتم:
‍‍‍

 Storage::disk('sftp')->put($filename, $request->input('file'));

و طبق دکیومنت لاراول این پکیج رو نصب کردم:
league/flysystem-sftp ~1.0
اما نمیدونم دقیقا با این پکیج چیکار کنم
داخل AppServiceProvider هم این خط رو گذاشتم:


Storage::extend('sftp', function ($app, $config) {  
return new Filesystem(new SftpAdapter($config));  
});

پیغامی که برام موقع اپلود میاد اینه:
connection closed by server
لطفا کمک کنیدحلش کنم
@ali.bayat
@Alimotreb
@hesammousavi

pari.a
pari.a
@pari.a
ثبت پرسش جدید

پاسخ‌ها

5
Alimotreb
Alimotreb
@Alimotreb

تخصص: کانفیگ سرور و برنامه نویس

بهترین پاسخ

توی همون فایل env
باید پورت رو 22 قرار بدید

طبق آموزش
https://laravel.com/docs/5.8/filesystem#driver-prerequisites
جای domain.com هم آیپی سرور رو بزنید
private key هم در هاست های سی پنل لازمه

میگم اکثر هاستینگ ها این دسترسی رو نمیدن
که باید از همون FTP وصل شید
@amini.parastoo

Alimotreb
Alimotreb
@Alimotreb

تخصص: کانفیگ سرور و برنامه نویس

سلام
@amini.parastoo

شما اگر تغییر درایو به FTP بزنید خیلی راحت ترید
SFTP باید سمت اون سرور کانفیگ شده باشه و پشتیبانی شده باشه
که به ندرت این کار انجام میشه
برای همین تنظیمات رو برای FTP قرار بدید

pari.a
pari.a
@pari.a

مسوول سرور گفتن همه کانفیگ ها اوکی هست از طرفی مجبور به استفاده از sftp هستم
@Alimotreb

شاید پاسخ شما همین‌جا باشد

Alimotreb
Alimotreb
@Alimotreb

تخصص: کانفیگ سرور و برنامه نویس

@amini.parastoo

توی فایل
env('SFTP_HOST')

چی قرار دادید مقدارش رو در فایل env

pari.a
pari.a
@pari.a

همچین چیزی example.org بدون https تغییر کوچیکی بدم مینویسه could not connect اما وقتی یوزر و پسورد رو تغییر میدم همون پیغام connection closed by server میاد
@Alimotreb

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام