سیستم آپلود فایلی که برای سایت طراحی می کنیم سایت باید با ftp باشه یا با php

phpweb

Active Member
من یه سیستم آپلود فایل نوشتم که با استفاده از خود پی اچ پی فایلها رو آپلود می کنه. می خوام بدونم بهتر نیست که از ftp استفاده کنم؟
 

Domanjiri

Well-Known Member
درود بر شما

حجم فایل هایی که آپلود میشن در چه اُردری هست؟

آیا قراره اجازه بدین که کاربر ها فایل آپلود کنند یا اینکه مدیر و نهایتا چند کاربر دارای صلاحیت ارسال فایل؟

...

موردی دیگه ای هم اگه هست بفرمایید تا توضیح بدم.
 

phpweb

Active Member
درود بر شما

حجم فایل هایی که آپلود میشن در چه اُردری هست؟

آیا قراره اجازه بدین که کاربر ها فایل آپلود کنند یا اینکه مدیر و نهایتا چند کاربر دارای صلاحیت ارسال فایل؟

...

موردی دیگه ای هم اگه هست بفرمایید تا توضیح بدم.
حجم فایلها رو تا 1.5 گیگ مشخص کردم.

فقط مدیران سایت می تونن فایل آپلود کنن.

فقط همین دو مورد هست. الان کدها به خوبی کار می کنن ولی می خوام بدونم که برای سیستم آپلود فایل پی اچ پی بهتره یا اف تی پی.
 

Domanjiri

Well-Known Member
حجم فایلها رو تا 1.5 گیگ مشخص کردم.

فقط مدیران سایت می تونن فایل آپلود کنن.

برای این سیستم شما حتما از FTP استفاده کن! FTP در حجم های بالا سرعت آپلود بیشتری داره، علاوه بر اینکه نکته بی نهایت با ارزش، قابلیت resume کردن آپلود در FTP هست که فکر کنم کافی باشه..

البته شما گفتید که مدیر ها فایل آپلود می کنن، پس خیالتون تا حدی از نظر امنیت راحت هست، ولی بازم اشاره می کنم که یه سری مسائل مبادا فراموش بشه، هر کاربر یک فضا داشته باشه، کابرها فقط پرمیشن رایت کردن داشته باشند و.... کلا پیاده سازی سیستم آپلود FTP نیاز به تخصص بیشتری نسبت به حالت دیگه داره..( و البته دردسر بیشتر:) )

موفق باشید.
 
آخرین ویرایش:

phpweb

Active Member
برای این سیستم شما حتما از FTP استفاده کن! FTP در حجم های بالا سرعت آپلود بیشتری داره، علاوه بر اینکه نکته بی نهایت با ارزش، قابلیت resume کردن آپلود در GFTP هست که فکر کنم کافی باشه..

البته شما گفتید که مدیر ها فایل آپلود می کنن، پس خیالتون تا حدی از نظر امنیت راحت هست، ولی بازم اشاره می کنم که یه سری مسائل مبادا فراموش بشه، هر کاربر یک فضا داشته باشه، کابرها فقط پرمیشن رایت کردن داشته باشند و.... کلا پیاده سازی سیستم آپلود FTP نیاز به تخصص بیشتری نسبت به حالت دیگه داره..( و البته دردسر بیشتر:) )

موفق باشید.
برای این سیستم به این صورت عمل کردم که یه پوشه با پرومیشن 644 ایجاد کردم. حالا هر فایلی که آپلود بشه، توی این پوشه قرار می گیره. اگر پوشه ای ساخته بشه هم توی این پوشه قرار می گیره.

هیچکدوم از مدیرها نمی تونن به بیرون از این پوشه دسترسی داشته باشن.

من 1.5 گیگ انتخاب کردم، ولی فکر نکنم کسی بخواد یه فایل با این حجم رو آپلود کنه. نهایتش 40-50 مگ آپلود کنن. برای حجم 45-50 مگابایت هم باید از اف تی پی استفاده کنم؟

اسم فایلها رو چک می کنم، مسیر آپلود شدنشون رو چک می کنم. بعضی پسوندها مثل exe, php, py و... ر. اجازه نمی دم. هرفایل باید یک دات (.) داشته باشه.

تنها مشکل اینه که محتویات فایل مخرب باشه. از اونجا که موقع آپلود کردن فایل با محتویاتشون کار ندارم فکر نکنم مشکلی پیش بیاد. در این مورد چه نظری دارید؟
 

Domanjiri

Well-Known Member
من 1.5 گیگ انتخاب کردم، ولی فکر نکنم کسی بخواد یه فایل با این حجم رو آپلود کنه. نهایتش 40-50 مگ آپلود کنن. برای حجم 45-50 مگابایت هم باید از اف تی پی استفاده کنم؟
کماکان من توصیه می کنم از FTP استفاده کنید، به طور معمول از HTTP برای آپلود تا سقف 10-15مگ استفاده میشه(البته بیشتر هم میشه ها، اینجا جاش نیست توضیح بدم)، ولی به نظر من این عدد توی مملکت خودمون کمتر از اینهاست، من الان خودم هر چند دقیقه (یه کوچولو اغراق!) ارتباطم قطع میشه. حالا شما فرض کن یه نفر 44 مگ آپلود کرده باشه و یهو ارتباط قطع بشه! فکر می کنید اونموقع چه حسی نسبت به سازنده سیستم داشته باشه؟!:mad:

تنها مشکل اینه که محتویات فایل مخرب باشه. از اونجا که موقع آپلود کردن فایل با محتویاتشون کار ندارم فکر نکنم مشکلی پیش بیاد. در این مورد چه نظری دارید؟
خب یه فایل مخرب تا وقتی اجرا نشه که ...بی خیال اطلاعاتم ناقص هست، شما یه سر برو بخش سرور و .. انجمن، از بچه های اونجا بپرس که جریان آنتی ویروس و .. روی سرور ها دقیقا چجوری هست و چطور عمل میکنه، (اگه اطلاعاتی بدست آوردین، خوشحال میشم با من هم در میون بزارید:) )

در ضمن یه درخواستی هم من از شما دارم: لطفا درمباحثی که آخرش به نتیجه ی دلخواه می رسید ، اعلام کنید که این مشکل با این روش حل شد، نمی دونید چقدر این مسئله برای کسی که با سرچ کردن، اون مبحث رو پیدا می کنه حیاتیه. نمونش الان من نمی دونم مسئله شما توی تاپیک "حذف ناخواسته ..." حل شده یا نه! :-?

موفق باشید
 

phpweb

Active Member
کماکان من توصیه می کنم از ftp استفاده کنید، به طور معمول از http برای آپلود تا سقف 10-15مگ استفاده میشه(البته بیشتر هم میشه ها، اینجا جاش نیست توضیح بدم)، ولی به نظر من این عدد توی مملکت خودمون کمتر از اینهاست، من الان خودم هر چند دقیقه (یه کوچولو اغراق!) ارتباطم قطع میشه. حالا شما فرض کن یه نفر 44 مگ آپلود کرده باشه و یهو ارتباط قطع بشه! فکر می کنید اونموقع چه حسی نسبت به سازنده سیستم داشته باشه؟!:mad:


خب یه فایل مخرب تا وقتی اجرا نشه که ...بی خیال اطلاعاتم ناقص هست، شما یه سر برو بخش سرور و .. انجمن، از بچه های اونجا بپرس که جریان آنتی ویروس و .. روی سرور ها دقیقا چجوری هست و چطور عمل میکنه، (اگه اطلاعاتی بدست آوردین، خوشحال میشم با من هم در میون بزارید:) )

در ضمن یه درخواستی هم من از شما دارم: لطفا درمباحثی که آخرش به نتیجه ی دلخواه می رسید ، اعلام کنید که این مشکل با این روش حل شد، نمی دونید چقدر این مسئله برای کسی که با سرچ کردن، اون مبحث رو پیدا می کنه حیاتیه. نمونش الان من نمی دونم مسئله شما توی تاپیک "حذف ناخواسته ..." حل شده یا نه! :-?

موفق باشید
حالا شما فرض کن یه نفر 44 مگ آپلود کرده باشه و یهو ارتباط قطع بشه! فکر می کنید اونموقع چه حسی نسبت به سازنده سیستم داشته باشه؟!:mad:
قطعی اینترنت که دست طراح سایت نیست. منظورتون اینه که اگه با اف تی پی آپلود کنیم، اگر ارتباط قطع شد، موقع آپلود مجدد اف تی پی از اونجایی که آپلود قطع شده شروع به آپلود می کنه ؟
 

Domanjiri

Well-Known Member
قطعی اینترنت که دست طراح سایت نیست. منظورتون اینه که اگه با اف تی پی آپلود کنیم، اگر ارتباط قطع شد، موقع آپلود مجدد اف تی پی از اونجایی که آپلود قطع شده شروع به آپلود می کنه ؟

بله قطع شدن ارتباط دست سایت نیست، ولی قابل پیش بینی که هست، اون کاربر عصبانی:)green: ) اون موقع فقط به این فکر میکنه که برنامه نویس که می دونسته وضع اینترنت اینه، چرا سیستمی نذاشته که resume رو پشتیبانی کنه!

دقیقا همینطوره، مثل دانلود منیجر ها دیگه!
 

phpweb

Active Member
بله قطع شدن ارتباط دست سایت نیست، ولی قابل پیش بینی که هست، اون کاربر عصبانی:)green: ) اون موقع فقط به این فکر میکنه که برنامه نویس که می دونسته وضع اینترنت اینه، چرا سیستمی نذاشته که resume رو پشتیبانی کنه!

دقیقا همینطوره، مثل دانلود منیجر ها دیگه!
با توجه به این قابلیت ftp باید سیستم آپلود فایل رو عوض کنم و با ftp کار کنم.
 

phpweb

Active Member
بله قطع شدن ارتباط دست سایت نیست، ولی قابل پیش بینی که هست، اون کاربر عصبانی:)green: ) اون موقع فقط به این فکر میکنه که برنامه نویس که می دونسته وضع اینترنت اینه، چرا سیستمی نذاشته که resume رو پشتیبانی کنه!

دقیقا همینطوره، مثل دانلود منیجر ها دیگه!
من هرچی می گردم نمی تونم یه آموزش برای ساخت آپلود سنتر با ftp به همراه امکانات یه دانلود منیجر پیدا کنم.

شما لینکی سراغ ندارید که همچین آموزش توش باشه؟
 

Domanjiri

Well-Known Member
سلام

دقیقن منظورتون رو متوجه نمیشم!

شما باید روی سرور FTP، برای هر کاربر یه اکانت FTP ایجاد کنید، بعد کاربر با یه نرم افزار (مثل FileZilla ) فایل ها رو آپلود می کنه.

موفق باشی
 

phpweb

Active Member
سلام

دقیقن منظورتون رو متوجه نمیشم!

شما باید روی سرور FTP، برای هر کاربر یه اکانت FTP ایجاد کنید، بعد کاربر با یه نرم افزار (مثل FileZilla ) فایل ها رو آپلود می کنه.

موفق باشی
من الان توی سایتم یه آپلود سنتر دارم و مشکلی برای آپلود فایلها با پی اچ پی ندارم.

الان توی این سیستم که من نوشتم، فایلها به کمک php و با توابع php آپلود می شن.

من می خوام آپلود فایل به کمک ftp انجام بشه. یعنی وقتی یکی از مدیران وارد کنترل پنل خودش شد، بتونه فایلهای مورد نظر خودش رو باftp توی سایت آپلود کنه (البته به cpanel هم نیاز نباشه).

هرچی دنبال آموزش برای نوشتن چنین سیستمی گشتم چیزی پیدا نکردم و اگر هم آموزشی بود، آموزشهای ساده ای بود که توی منوال پی اچ پی هم زیاد ازشون گیر می یاد. مثل اسکریپت زیر که خیلی ساده هست (این اسکریپت حرفه ای نیست که بشه به مشتریها فروختش):
PHP:
<?php

// define some variables
$local_file = 'local.zip';
$server_file = 'server.zip';

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// try to download $server_file and save to $local_file
if (ftp_get($conn_id, $local_file, $server_file, FTP_BINARY)) {
    echo "Successfully written to $local_file\n";
} else {
    echo "There was a problem\n";
}

// close the connection
ftp_close($conn_id);

?>

اگر یه آموزش برای نوشتن یه سیستم آپلود حرفه ای به کمک ftp سراغ دارید لطفا معرفی کنید.
 

Domanjiri

Well-Known Member
این کدی که شما قرار دادی فکر کنم برای انتقال فایل از یه سرور FTP به سرور خودمون باشه!

برای آپلود FTP نیازی به کدنویسی PHP [فکر نکنم] وجود نداشته باشه. شما با یه برنامه (مثل همون فایل زیلا) یا با خود مرورگر فایل ها رو انتقال میدی به سرور. تفاوت این دوتا هم مثل تفاوت دانلود با خود مرورگر و دانلود با برنامه های دانلود منیجیر هست.

مسئله اساسی همون ساخت اکانت هست که چون گفتی که فقط برای مدیران قراره که سیستم آپلود وجود داشته باشه، اونم زیاد وقتتون رو نمیگیره و بصورت دستی میشه در عرض چند دقیقه n تا اکانت ساخت!

موفق باشی
 

phpweb

Active Member
این کدی که شما قرار دادی فکر کنم برای انتقال فایل از یه سرور FTP به سرور خودمون باشه!

برای آپلود FTP نیازی به کدنویسی PHP [فکر نکنم] وجود نداشته باشه. شما با یه برنامه (مثل همون فایل زیلا) یا با خود مرورگر فایل ها رو انتقال میدی به سرور. تفاوت این دوتا هم مثل تفاوت دانلود با خود مرورگر و دانلود با برنامه های دانلود منیجیر هست.

مسئله اساسی همون ساخت اکانت هست که چون گفتی که فقط برای مدیران قراره که سیستم آپلود وجود داشته باشه، اونم زیاد وقتتون رو نمیگیره و بصورت دستی میشه در عرض چند دقیقه n تا اکانت ساخت!

موفق باشی
من می خوام همه ابزار سایت هایی که طراحی می کنم تحت وب باشن و نیاز به نصب نرم افزار جانبی نباشه. چون در این صورت وقتی یه سایت رو به یه نفر دادم و ویندوزش عوض شد دوباره باید بهش توضیح بدم که چطوری نرم افزار رو نصب کن و ....

یعنی اصلا نمی شه از طریق توابع داخلی پی اچ پی، یه فایل رو به کمک ftp از مرورگر به کنترل پنل مدیر آپل.د یا دانلود کرد؟
 

جدیدترین ارسال ها

بالا