VIP همه چیز درباره برنامه نویسی

وضعیت
موضوع بسته شده است.

☾♔TALAYEH_A♔☽

کاربر نگاه دانلود
کاربر نگاه دانلود
عضویت
2017/05/18
ارسالی ها
35,488
امتیاز واکنش
104,218
امتیاز
1,376
نگاهی به پروتکل HTTP و URL


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

احتمالا تا به حال نام HTTP را زیاد شنیده اید. این کلمه مخفف Hypertext Transfer Protocol است و به عنوان یک پروتکل انتقال داده فرامتنی بین سیستم های مختلف به حساب می آید. در واقع HTTP پایه اصلی وب به حساب می آید. به همین خاطر لازم است که شما به عنوان یک توسعه دهنده وب درک مناسبی نسبت به آن داشته باشید. به طور کلی ارتباط میان یک کاربر از طریق مرورگر نصب شده روی سیستم عامل اش با یک وب سرور از طریق مفهومی تحت عنوان Request/Response صورت می گیرد. واژه Request به معنی "درخواست"، واژه Response به معنی "پاسخ" است. به طور خلاصه اگر بخواهیم که با یک سرور ارتباط برقرار سازیم می بایست دو کار صورت پذیرد:
- در گام نخست درخواستی را برای سرور ارسال کنیم،
- و در گام بعد یک پاسخ از سمت سرور دریافت خواهیم کرد.

به طور کلی، در پس هر ارتباطی در شبکه جهانی وب درخواستی قرار دارد که این درخواست از طریق یک URL عملی می گردد:

8998e3065e37282323fc45641f9f4685.png


همان طور که در تصویر فوق مشخص است، پروتکل http در ابتدای این درخواست قرار دارد. سپس نام ساب دامین قرار دارد که در مثال فوق animals است. اگر بخواهیم به صورت خیلی ساده وظیفه ی ساب دامین ها را توضیح دهیم، بایستی بگوییم که ما با استفاده از ساب دامین ها خواهیم توانست تا روی یک فضای میزبانی وب، چندین سایت مجزا از یکدیگر قرار دهیم. لازم به ذکر است که در اکثر مواقع ما ساب دامین ها را مشاهده نمی کنیم چرا که اکثر سایت ها محتوای اصلی خود را روی همان دامین اصلی قرار می دهند. سپس نام دامین اصلی قرار دارد که در این مثال example است که پس از آن com. آمده است که اصطلاحا Top-level Domain نامیده می شود. از جمله پسوندهای دامین معروف می توان به com, ir و org اشاره کرد.

فرض کنیم که در دایرکتوری (پوشه) اصلی سایت ما که روی سرور هاست قرار گرفته است فولدری داریم تحت عنوان dogs که مسئول نگهداری فایل های مرتبط با سگ ها است. حال اگر بخواهیم به فایلی که روی سایت ما قرار دارد دست پیدا کنیم می بایست پس از نام دامین، نام آن فولدر را بیاوریم که تحت عنوان Resource Path یا "مسیر مرتبط با منابع سایت" یا به طور خلاصه Path شناخته می شود. نیاز بدانیم که چنانچه مثلا داخل فولدر dogs یک فولدر دیگر داشته باشیم تحت عنوان poodle، به سادگی با قرار دادن یک علامت / پس از نام فولدر dogs و نوشتن نام فولدر مد نظر خواهیم توانست به فولدر زیر شاخه دست پیدا کنیم. به عبارت دیگر dogs/poodle.

در نهایت به Query می رسیم. به طور کلی منظور از کوئری «داده ای» است که از طریق URL انتقال داده می شود. در واقع زمانی که از طریق HTTP درخواستی برای سرور ارسال می شود، سرور اقدام به پیدا نمودن داده مرتبط با درخواست می کند. حال این داده درخواستی می تواند یک فایل مثلا با پسوند اچ تی ام ال و یا داده های مختلفی باشد. در مورد اول که مشخص است، فایل اچ تی ام ال برای کاربر ارسال می شود اما در صورتی که درخواست چیزی از جنس داده و یا اجرای یک برنامه باشد، سرور بایستی آن برنامه را اجرا نموده و خروجی آن برنامه را برای کاربر ارسال نماید. با این تفاسیر، این کوئری آدرسی است که برای دسترسی به بخش خاصی از آن برنامه ارسال می شود. بنابراین پس از اجرای برنامه مد نظر، داده های مورد نظر تولید شده و سپس در اختیار مرورگر قرار خواهند گرفت. در مثال فوق، ما یک کوئری را برای سرور ارسال کرده ایم که حاوی دو پارامتر است که یکی از آن ها color و دیگری puppy نام دارد. برای آن که به این پارامترها یک Value یا مقدار اختصاص دهیم هم از علامت = استفاده کرده ایم که مقدار پارامتر اول black و مقدار پارامتر دوم false است. لازم به ذکر است که برای مجزا سازی پارامترها از علامت & که اصطلاحا Ampersand نامیده می شود استفاده می کنیم.
 
  • پیشنهادات
  • ☾♔TALAYEH_A♔☽

    کاربر نگاه دانلود
    کاربر نگاه دانلود
    عضویت
    2017/05/18
    ارسالی ها
    35,488
    امتیاز واکنش
    104,218
    امتیاز
    1,376
    متدهای اصلی در پروتکل اچ تی تی پی


    پیش از این توضیح دادیم که پروتکل HTTP این وظیفه را دارا است تا مابین کلاینت -یا بهتر بگوییم کاربر- و سرور ارتباط برقرار سازد که این ارتباط همان طور که قبلا هم توضیح دادیم از طریق یک ارتباط Request/Response صورت می پذیرد. دو مورد از پرکاربردترین متدهای پروتکل HTTP برای برقراری ارتباط مابین کلاینت و سرور عبارتند از GET و POST که در این آموزش قصد داریم به بررسی خصوصیات هر کدام از آن ها به همراه تفاوتی هایی که متدهای GET وPOST با یکدیگر دارند بپردازیم. متد GET در قالب یک جفت Parameter/Value یا به عبارتی پارامتر/مقدار از طریق یو آر ال ارسال می شود. برای مثال، یو آر ال زیر را می توان مد نظر قرار داد:

    Please, ورود or عضویت to view URLs content!

    همان طور که در یو آر ال فوق می بینیم، پس از نام دامنه و فایل demo.php، یک علامت سوال قرار گرفته سپس نام پارامتر که در اینجا name است مساوی با مقدار آن که value است در نظر گرفته شده است. از جمله ویژگی های متد GET می توان به موارد زیر اشاره کرد:
    - درخواست هایی از جنس GET قابلیت Cache شدن دارند.
    - درخواست هایی از جنس GET در تاریخچه ی مرورگر کاربر باقی می مانند.
    - درخواست هایی از جنس GET را می توان Bookmark کرد.
    - درخواست هایی از جنس GET را هرگز نمی بایست برای داده های حساس مثل اطلاعات حساب کاربری مورد استفاده قرار داد.
    - درخواست هایی از جنس GET از لحاظ حجم داده ها دارای محدودیت هستند. حداکثر کاراکتری که از طریق یو آر ال می توان ارسال کرد، چیزی در حدود 2048 کاراکتر است.
    - درخواست هایی از جنس GET بهتر است که بیشتر برای دریافت اطلاعات مورد استفاده قرار گیرند.
    - در صورتی که صفحه ای که یک متد GET داخل یو آر ال آن وجود دارد را اصطلاحاً رفرش کنیم، هیچ اتفاق خاصی رخ نخواهد داد و این کار اختلالی در کارکرد وب اپلیکیشن ایجاد نمی کند.
    - درخواست هایی از جنس GET دارای امنیت پایینی هستند چرا که داده ها به عنوان بخشی از یو آر ال ارسال می شوند.
    - درخواست هایی از جنس GET به سادگی با مشاهده ی یو آر ال قابل رویت هستند.
    - از متد GET هرگز نمی توان برای داده های باینری مثل تصاویر و … استفاده نمود.

    نکته
    در صورتی که بخواهیم به صورت غیر فنی مفهوم Cache را توضیح دهیم، بایستی بگوییم که منظور از Cache فضایی است که داده های پرکاربرد به صورت موقت ذخیره می شوند تا فرایند دریافت اطلاعات از سمت سرور با سرعت بیشتری صورت گرفته و در نتیجه تجربه ی کاربری به مراتب بهتری برای کاربران سایت ایجاد گردد. به طور مثال، مرورگرهایی مثل فایرفاکس یا گوگل کروم از Browser Caching برای ذخیره سازی برخی داده های صفحات وب استفاده می کنند تا کاربران در مراجعات بعدی به همان صفحات، با سرعت بیشتری بتوانند صفحات مد نظر خود را باز کنند. به عبارت دیگر، وقتی شما یک صفحه ی وب را مشاهده می کنید، بسیاری از داده های موجود در آن صفحه همچون تصاویر، لوگو، فونت و ... در کش مرورگر ذخیره شده و در صورتی که بعدا مجدد به آن صفحه سر بزنید، به جای آن که مرورگر برای بارگذاری عناصر موجود در صفحه درخواستی برای سرور ارسال کند، آن ها را از داخل کش -که سرعت به مراتب بیشتری نسبت به فراخوانی از سرور دارد- بارگذاری خواهد کرد.
    متد POST یکی دیگر از پرکاربرد ترین متدهای پروتکل HTTP است. به طور مثال، در استفاده از سایت های اینترنتی بسیاری مواقع برای ما پیش می آید که مجبوریم در سایتی ثبت نام کنیم. برای ثبت نام در سایت مد نظر بایستی سوالاتی که در قالب یک فرم در اختیار ما قرار می گیرد را پر کنیم. مثلاً اولین سوالی که از ما پرسیده می شود نام و نام خانوادگی ما است. فرض کنیم کاربری با نام "احمد" و نام خانوادگی "پورصمد" می خواهد در سایت ثبت نام کند. پس از وارد کردن عبارت احمد در فیلد مربوط به نام و همچنین عبارت "پورصمد" در فیلد مربوط به نام خانوادگی در این فرم، این دو داده از طریق POST گرفته شده و سپس داده ای حاوی عبارت احمد پورصمد ایجاد می گردد و به سمت سرور ارسال می گردد (در فرم های اینترنتی اصطلاحا به فضاهای یک فرم که قابلیت پر شد دارند Field گفته می شود.) از جمله ویژگی های متد POST می توان به موارد زیر اشاره کرد:
    - درخواست هایی از جنس POST هرگز Cache نمی شوند.
    - درخواست هایی از جنس POST در تاریخچه ی مرورگر باقی نخواهند ماند.
    - درخواست هایی از جنس POST قابلیت Bookmark شدن ندارند.
    - هیچ گونه محدودیتی در ارتباط با میزان داده هایی که از طریق متد POST می توان به سمت سرور فرستاد وجود ندارد.
    - در صورت رفرش کردن صفحه ای که از متد POST داخل آن استفاده شده است، اطلاعاتی مجدد به سمت سرور ارسال خواهند شد که همین مسئله می توان منجر به ایجاد اختلال در کار وب اپلیکیشن شود که می بایست جلوی آن را گرفت.
    - درخواست هایی از جنس POST دارای امنیت به مراتب بالاتری نسبت به متد GET هستند چرا که داده ها در مرورگر ذخیره نخواهند شد.
    - درخواست هایی از جنس POST در یو آر ال قرار نگرفته بنابراین در معرض دید کاربران هم قرار نمی گیرند.
    - از متد POST می توان برای انتقال داده های باینری مثل تصاویر و … استفاده نمود.

    سایر متدهای پروتوکل HTTP عبارتند از HEAD, PUT, DELETE, OPTIONS, CONNECT.
     

    ☾♔TALAYEH_A♔☽

    کاربر نگاه دانلود
    کاربر نگاه دانلود
    عضویت
    2017/05/18
    ارسالی ها
    35,488
    امتیاز واکنش
    104,218
    امتیاز
    1,376
    آشنایی با پیام های اچ تی تی پی


    پس از آن که کاربر از طریق مرورگر خود با موفقیت توانست یک درخواست از جنس HTTP برای سرور ارسال کند، حال نوبت به وب سرور می رسد تا این درخواست را پاسخ نماید. در واقع، وب سرور این کار را از طریق پیام ها و کدهایی که تحت عنوان Status Messages یا «کدهای وضعیت» معروف هستند انجام می دهد. این کدها برای هر نوع جوابی دسته بندی شده اند که در ادامه با کاربردی ترین آن ها آشنا خواهیم شد.

    Informational Messages
    اولین گروه از این پیام ها تحت عنوان Informational Messages به معنی «پیام های اطلاعاتی» شناخته می شوند که این گروه از پیام ها با عدد 1 شروع می شوند. به طور مثال پیام Continue که کد اختصاصی آن معادل با 100 است، حاکی از آن است که سرور به مرورگر کاربر می گوید که به کار خود در ارسال درخواست ها ادامه دهد.

    Successful
    گروه دوم از این پیام ها تحت عنوان پیام های Successful یا «پیام های موفقیت» شناخته می شوند که این گروه از پیام ها با عدد 2 شروع می شوند. در واقع هر زمانی که کاربر درخواست اش با موفقیت انجام شود، این پیام از سمت سرور برای مرورگر وی ارسال خواهد شد. به عنوان مثال فرض کنیم که کاربر یک دستور GET برای سرور ارسال می کند و سرور هم با موفقیت می تواند فایل مد نظر کاربر را پیدا نموده و به دستش برساند. در این مرحله یک پیام OK با کد 200 برای مرورگر کاربر ارسال خواهد شد.

    Redirection
    پیام بعدی پیام Redirection به معنی «تغییر مسیر» است که با عدد 3 آغاز می شود. خیلی اوقات برای ما پیش می آید که به آدرسی می رویم تا چیزی را از آنجا دانلود کنیم اما به محض آن که روی دکمه دانلود کلیک می کنیم، می بینیم که مرورگر ما را به آدرس دیگری ارجاع می دهد. در واقع آدرس فایل دانلودی تغییر کرده است و سرور با ارسال پیام Moved Permanently با کد اختصاصی 301 به مرورگر ما، این مسئله را به اطلاع مان می رساند.

    Client Error
    شاید بارها و بارها برایتان پیش آمده زمانی که می خواهید به یک آدرس بروید با صفحه ای تحت عنوان 404 مواجه شده اید. در واقع زمانی که درخواستی از سمت کاربر برای وب سرور ارسال شود که این درخواست به منبعی اشتباهی ختم شود، یا آن منبع دیگر وجود خارجی نداشته باشد، یا وب سرور قادر به یافتن آدرس مورد نظر نباشد و یا وب سرور تصور کند که آدرس اشتباه است، سرور پیامی از جنس Not Found با کد 404 ارسال خواهد کرد.

    Server Error
    گاهی اوقات هم پیش می آید که وقتی درخواستی از سمت کاربر برای سرور ارسال می شود، در سمت خود سرور مشکلی پیش می آید که در این گونه مواقع پیام Server Error که با عدد 5 شروع می شود برای مرورگر کاربر ارسال می گردد. معروف ترین خطاهایی از این دست Internal Server Error است که دارای کد اختصاصی 500 می باشد.
     

    ☾♔TALAYEH_A♔☽

    کاربر نگاه دانلود
    کاربر نگاه دانلود
    عضویت
    2017/05/18
    ارسالی ها
    35,488
    امتیاز واکنش
    104,218
    امتیاز
    1,376
    آشنایی با پورت های پروتکل اچ تی تی پی


    پس از آشنایی با مفاهیم سرور، وب سرور، پروتکل HTTP و سایر مسايل مربوطه، حال وقت اش رسیده تا با مفهوم پورت ها در شبکه های کامپیوتری آشنا شویم. اجازه دهید تا ماجرا را با یک مثال ساده توضیح دهیم. تصور کنید که هر کامپیوتر یک خانه است. در دنیای واقعی هر خانه یک آدرس دارد که از آن طریق افراد مختلف -مثل پستچی- می تواند به آن خانه دسترسی پیدا کند. در دنیای مجازی نیز داستان مشابه است و هر کامپیوتر دارای یک آدرس است که با یک عدد مشخص می شود که به آن IP گفته می شود که مخفف واژگان Internet Protocol است و شکلی مشابه این دارد: 192.168.255.27

    اما توجه داشته باشید که خانه ی شما دارای تعدادی راه ورود و خروج است که شامل در و پنجره های مختلف می شود. در شبکه های کامپیوتری نیز تعدادی مسیر ورود و خروج وجود دارد که تحت عنوان Port یا «پورت» شناخته می شوند که تعدادشان هم بسیار زیاد است. پورت های شبکه را با شماره مشخص می کنند و این در حالی است که هر کدام را مخصوص عبور و مرور گروه خاصی از اطلاعات قرار داده اند.

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

    مشهورترین پورت دنیای شبکه، پورت شماره 80 است چرا که برای نقل و انتقال داده ها از طریق پروتکل HTTP استفاده می شود. از جمله پورت های مشهور دیگر نیز می توان به پورت شماره 25 اشاره کرد که برای نقل و انتقال ایمیل از طریق سرویس SMTP به کار می رود.

    صفحات رمزنگاری شده وب که از فناوری SSL استفاده می کنند از پورت 443 استفاده می کنند. برای نقل و انتقال فایل از طریق پروتکل FTP از پورت 21 استفاده می شود که در فصول آینده به تفصیل در مورد این پورت خاص صحبت خواهیم کرد (لازم به ذکر است که اصطلاح FTP مخفف واژگان File Transfer Protocol به معنی «پروتکل انتقال فایل» می باشد.)

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

    نکته
    به طور کلی منظور از HTTP Header ها داده هایی هستند که به همراه درخواست ها برای وب سرور ارسال می شوند که این داده ها در به انجام رساندن یک ارتباط Request/Response موفق نقشی کلیدی دارند.
    گاهی اوقات می توان اعداد مرتبط با پورت ها را در آدرس URL مشاهده کرد. به طور پیش فرض پروتکل HTTP از پورت 80 استفاده می کند و این در حالی است که هیچ فرقی مابین آدرس های سکان آکادمی :: آموزش برنامه نویسی و سکان آکادمی :: آموزش برنامه نویسی وجود ندارد چرا که به صورت پیش فرض وب سرور این پورت را خواهد شناخت. اما گاهی اوقات می بینیم که جهت امنیت یا به هر دلیل دیگری پورت دسترسی برای برخی اپلیکیشن ها را تغییر می دهند. مثلا جهت ورود به کنترل پنل مدیریت وب سایت ها، یک پورت را به شکل site.com:2083 مشخص می کنند. در واقع، صفحه ی ورود به کنترل پنل سایت روی یک پورت به جز پورت 80 قرار گرفته تا از نگاه چشمان نامحرم به دور نگاه داشته شود و کمی امنیت بیشتری داشته باشد.
     

    ☾♔TALAYEH_A♔☽

    کاربر نگاه دانلود
    کاربر نگاه دانلود
    عضویت
    2017/05/18
    ارسالی ها
    35,488
    امتیاز واکنش
    104,218
    امتیاز
    1,376
    پروتکل امن SSL: سیگنالی هر چند کوچک برای رنکینگ بهتر سایت


    یکی از اولویت های بسیار مهم برای موتورهای جستجو به‌ خصوص گوگل، امنیت است. در همین راستا، بسیاری از وب مسترها را می‌بینیم که از پروتکل HTTP به پروتکل امن HTTPS مهاجرت کرده‌اند و یکی از معیارهایی که امروزه گوگل برای رنکینگ سایت‌ها مورد استفاده قرار می دهد، همین پروتکل است هر چند که این معیار در حال حاضر وزن خیلی زیادی نداشته باشد. آنچه در این آموزش قصد داریم مورد بررسی قرار دهیم، آشنایی با مفاهیم SSL و HTTPS است و خواهیم دید که به چه شکل می‌توان از پروتکل HTTP به HTTPS مهاجرت کرد.

    تفاوت HTTP با HTTPS
    پروتکل HTTP که مخفف واژگان Hypertext Transfer Protocol به معنی «پروتکل انتقال فرامتنی» است، یک پروتکل Request/Response یا «درخواست/پاسخ» است به این شکل که مرورگر کاربر برای ارتباط با سرور، یک درخواست از نوع اچ تی تی پی برای سرور ارسال می‌کند سپس سرور هم این درخواست را گرفته و بسته به نیازی که کاربر درخواست کننده دارد -مثلا گرفتن دیتای خاصی از دیتابیس یا باز کردن یک فایل و غیره- Response یا «پاسخی» از جنس اچ تی تی پی برای مرورگر کاربر ارسال می‌شود که این ریسپانس حاوی یکسری اطلاعات است (جهت آشنایی بیشتر با این پروتکل، به آموزش نگاهی به پروتوکل HTTP و URL مراجعه نمایید.) پروتکل اچ تی تی پی دارای یکسری دستورات است که از طریق آن‌ها ارتباط با سرور صورت می‌گیرد که از جمله ی مهم‌ترین آن‌ها می‌توان به موارد زیر اشاره کرد:
    GET: برای انتقال درخواست هایی که محرمانه و خیلی حجیم نیستند مثلاً جستجو در یک سایت
    POST: برای انتقال درخواست هایی مثل رمزعبور، اطلاعات حساس و … از این دستور استفاده می شود.

    جهت آشنایی بیشتر با این متدها، به آموزش متدهای اصلی در پروتکل اچ تی تی پی مراجعه نمایید.) علاوه بر این دستورات، یکسری Status Code یا «کدهای وضعیت» نیز مرتبط با پروتکل اچ تی تی پی هستند که به طور کلی به ۵ دسته ی مجزا تقسیم‌بندی می شوند (جهت آشنایی بیشتر با این کدهای وضعیت، به آموزش آشنایی با پیام های اچ تی تی پی مراجعه نمایید):
    کدهای 1xx: این نوع از کدهای وضعیت با عدد یک آغاز می‌شوند که نشان دهنده ی پیام کلی ریسپانس از طرف سرور هستند.
    کدهای 2xx: این کدها با عدد دو آغاز می‌شوند و نشان از موفقیت آمیز بودن یک عملیات در سمت سرور دارند.
    کدهای 3xx: این کدها به کدهای تغییر مسیر معروف هستند که با عدد سه آغاز می شوند.
    کدهای 4xx: کدهایی که با عدد چهار آغاز می‌شوند، نشان از وجود خطایی در ارتباط با سرور دارند و حاکی از آنند که کلاینت یا کاربر در ارسال درخواست خود دچار اشتباه شده است.
    کدهای 5xx: این کدها به کدهای خطای سرور معروف اند و با عدد پنج آغاز می شوند. به طور خلاصه، این نوع کدها حاکی از آنند که سرور در اجرای درخواست صحیحی از طرف کاربر دچار اشتباه یا خطا شده است.

    پروتکل اچ تی تی پی با نوعی از حملات که اصطلاحاً تحت عنوان Man in The Middle شناخته می‌شوند گره خورده است. به طور کلی، در حوزه ی امنیت شبکه‌های کامپیوتری حملات Man in The Middle یا MITM به نوعی از حملات گفته می‌شود که مجرمین سایبری از آن طریق مابین کاربر و سرور قرار گرفته و به رصد کردن اطلاعات شخصی کاربران و سوء استفاده های احتمالی برای منافع شخصی می پردازند.

    HTTPS مخفف واژگان Hypertext Transfer Protocol Secure به معنی «پروتکل انتقال فرامتی امن» است که یک پروتکل ارتباطی اینترنتی که ضامن انتقال امن دیتای مرتبط با کاربران مثل نام کاربری و رمزعبور، اطلاعات حساب بانکی و … مابین مرورگر و سرور است. این پروتکل گاهی اوقات تحت عنوان HTTPS over SSL نیز شناخته می‌شود (برای آن که ببینید که آیا یک سایت از پروتکل اس اس ال استفاده می‌کند یا خیر، به نوار آدرس مرورگر خود نگاه کنید؛ اگر عبارت //:https را در کنار یک تصویر قفل سبز رنگ دیدید، این بدان معنا است که سایت مد نظر دارای گواهینامه ی اس اس ال است.) دیتایی که از طریق HTTPS مابین مرورگر و سرور رد و بدل می شود، از طریق پروتکلی تحت عنوان TLS که مخفف واژگان Transport Layer Security است صورت می‌پذیرد که این پروتکل ۳ لایه ی امنیتی روی دیتای ارسال شده اعمال می کند:

    Encryption: انکریپشن یا «رمزنگاری» فرایندی است که روی دیتای ارسال شده صورت می‌گیرد به این شکل که کلیه ی اطلاعاتی که از طریق اچ تی تی پی اس ارسال می شوند، رمزنگاری یا اصطلاحاً Hash می‌شوند که مجرمین سایبری نتوانند اطلاعات حساس مرتبط با کاربران را اصطلاحاً Sniff کنند (فعل Sniff به معنی «بو کشیدن» است اما در اصطلاح فنی به معنی «درز پیدا کردن اطلاعات» ترجمه می شود.)

    Data Integrity: منظور از این اصطلاح، «درستی و صحت اطلاعات» کاربران است. به عبارت دیگر، دیتای مرتبط با کاربرانی که از سایت ما استفاده می‌کنند در حین ارسال شدن تحت هیچ عنوان تغییر پیدا نخواهند کرد (مثلاً هزینه ی سبد خرید یک فروشگاه آنلاین کم یا زیاد نخواهد شد.)

    Authentication: پس از استفاده از پروتکل اچ تی تی پی اس، این اطمینان نیز حاصل می‌شود که رد و بدل اطلاعات مابین مرورگر و سرور در مورد یک سایت خاص صورت می‌گیرد و شدیداً جلوی حملات Phishing را می‌گیرد

    هشدار
    فیشینگ به عملیاتی گفته می‌شود که مجرمین سایبری از آن طریق به دزدیدن اطلاعات کاربران مختلف می پردازند به این شکل که فرض کنید در یک شبکه ی اجتماعی عضو هستید. حال یک ایمیل از طرف مجرم سایبری برای شما ارسال می‌شود در صورتی که شما فکر می‌کنید از طرف آن شبکه ی اجتماعی است. درخواست این ایمیل آن است تا به تکمیل اطلاعات خود بپردازید. روی لینک داخل ایمیل که کلیک می کنید، به سایتی با حال و هوای سایت اصلی ارجاع داده می‌شوید و به محض آن که اطلاعات خود را وارد نمایید، اکانت شما لو رفته منظور خواهد شد!
    برای فعال کردن پروتکل اچ تی تی پی اس، شما باید یک Certificate (سرتیفیکیت یا گواهینامه) از شرکت های معتبری که ارائه می‌دهند تهیه کنید که تحت عنوان Certificate Authority یا CA شناخته می‌شوند که بین وب مسترها معمولاً تحت عنوان SSL Certificate معروف هستند.

    گواهینامه ی اس اس ال یک سند دیجیتال است که به وب سایت شما اختصاص می‌یابد که معتبر بودن شما را در معرض دید یک مرورگر -یا بهتر بگوییم کاربر- قرار می دهد. شرکت های CA کلیه ی داده‌های مرتبط با سایت شما من جمله نام دامین، اطلاعات مرتبط با سرور، اطلاعات شرکتی و … را رمزنگاری می کنند. حال ممکن است این سؤال برای شما پیش بیاید که یک مرورگر چطور می‌تواند اطمینان حاصل کند که یک گواهینامه ی اس اس ال معتبر است یا خیر؟

    تمامی مرورگرهای مطرح همچون فایرفاکس، گوگل کروم و … حاوی یکسری اطلاعات از پیش تعریف شده یی هستند که این امکان را به آن‌ها می‌دهد تا شرکت های CA یی که معتبر هستند را بشناسند. زمانی که سایت شما روی پروتکل اچ تی تی پی اس بالا بیاید، به محض آن که کاربری آدرس سایت شما را داخل مرورگر وارد کند، گواهینامه ی شما که در سرورتان ثبت شده برای مرورگر آن کاربر ارسال می گردد.

    پیش از این هم گفتیم که پروتکل اچ تی تی پی اس پیش از ارسال هر گونه دیتایی از طریق شبکه، آن دیتا را رمزنگاری می‌کند و سرور هم پس از به دست آوردن آن دیتا، اقدام به رمزگشایی دیتای به دست آورده می کند. در فرایند رمزنگاری/رمزگشایی دیتا، یک جفت کلید دیجیتال دخیل هستند که یکی اصطلاحاً Public یا «عمومی» است و دیگری Private یا «خصوصی».

    زمانی که کاربری از طریق سایتی که دارای گواهینامه ی اس اس ال است اقدام به ارسال اطلاعات مرتبط با خود مثل نام کاربری و رمزعبور می کند، سرور سایت شما یک کلید عمومی در اختیار مرورگر کاربر قرار داده که داده‌ها را رمزنگاری کند؛ حال زمانی که دیتای رمزنگاری شده به دست سرور رسید، سرور از کلید خصوصی گواهینامه ی اس اس سایت شما استفاده می‌کند تا دیتای رمزنگاری شده را رمزگشایی کرده و بالتبع آن را بفهمد.

    در پروتکل اس اس ال، هر نوع دیتای رمزنگاری شده با استفاده از Public Key فقط و فقط با استفاده از دارنده ی Private Key قابل رمزگشایی است و همین مسأله منجر به تضمین امنیت اطلاعات کاربران سایت می شود.

    تفاوت گواهینامه های Self-signed و Third-party-signed
    برای نصب گواهینامه ی اس اس ال روی سرور خود، شما دو راه‌کار پیش رو دارید: راه‌کار اول استفاده از گواهینامه های اصطلاحاً Self-signed هستند که این نوع گواهینامه ها از دید مرورگرها معتبر نیستند. کاربرانی که اقدام به باز کردن سایت‌هایی که دارای گواهینامه هایی از این دست هستند می کنند، قبل از باز شدن سایت با یک هشدار رو به رو می شوند. به طور کلی، این دست گواهینامه ها برای مواقعی که وب مستری بخواهد سایت خود را روی پروتکل HTTPS تست کند و نخواهد برای این کار هزینه یی متقبل شود مناسب است.

    دسته ی دوم گواهینامه های اصطلاحاً Third-party-signed هستند که این نوع گواهینامه ها از دید مرورگرها معتبر حساب می‌شوند چرا که توسط شرکت های CA ارائه می گردند. این نوع گواهینامه ها را به صورت سالانه باید تمدید کرد و مسلماً برای گرفتنشان، نیاز به پرداخت هزینه است که این هزینه از چند هزار تومان در سال تا چند میلیون تومان بسته به قابلیت‌های گواهینامه متغیر است.

    برای اخذ این دست گواهینامه ها، شما نیاز به یک CSR دارید که مخفف واژگان Certificate Signing Request به معنی «درخواست امضای گواهینامه» است که حاوی اطلاعاتی همچون نام سایت، آدرس شرکت و … است.

    گاهی اوقات پیش می‌آید که شما گواهینامه یی خریداری کرده‌اید که برای برخی مرورگرها یا برخی نسخه های خاصی از مرورگرها معتبر نیست. اگر چه که چنین اتفاقی خیلی نادر است، اما در چنین شرایطی کاربران سایت شما پیامی تحت عنوان Connection Not Trusted به معنی «ارتباط قابل اطمینان نیست» یا پیام هایی با مضمون مشابه مشاهده خواهند کرد.

    در فرایند تهیه ی گواهینامه ی اس اس ال، اطلاعات مختلفی از شما درخواست می‌شود که از آن جمله می‌توان به نام شرکت، اساسنامه و … اشاره کرد و چنین اطلاعاتی، این تضمین را می‌دهد که سایت شما سایتی معتبر است. در انتخاب گواهینامه ی SSL باید موارد زیر را مورد بررسی قرار داد:
    - نوع گواهینامه را باید مشخص کرد. برای یک دامنه مثلاً
    Please, ورود or عضویت to view URLs content!
    برای چندین دامنه مثلاً دامنه های
    Please, ورود or عضویت to view URLs content!
    و example.co.uk و یا وایلدکارد به صورت a.example.com و b.example.com
    - اخذ گواهینامه ی ۲۰۴۸ بیت به منظور ایجاد لایه ی امنیتی بیشتر
    - تنظیم فایل robots.txt برای پشتیبانی از پروتکل HTTPS (جهت آشنایی بیشتر با نحوه ی استفاده از این فایل، به آموزش آشنایی با فایل robots.txt مراجعه نمایید.)
    - استفاده از دستورات Redirect 301 برای هدایت کردن کاربران و موتورهای جستجویی که تاکنون به پروتکل HTTP انتقال می یافتند به پروتکل HTTPS
    - استفاده از Relative URL ها به این شکل که مثلاً برای لینک دادن به صفحه ی «درباره ما» به جای لینک زیر:

    Please, ورود or عضویت to view URLs content!

    از لینک زیر استفاده کنید:

    /about
    نکته
    به طور کلی، منظور از یو آر ال های Relative، یو آر ال هایی است که در آن‌ها آدرس مد نظر بدون نام دامنه می آید. علاوه بر این، استفاده از این نوع لینک ها این تضمین را ایجاد می‌کند که اگر در آینده خواستید تا مجدد به پروتکل اچ تی تی پی مهاجرت کنید، با مشکلی مواجه نشوید.
    در صورت نیاز به استفاده از گواهینامه ی اس اس اس، همواره باید موارد زیر را مد نظر داشته باشیم:
    - گواهینامه Expire ( اکسپایر یا منقضی) نشده باشد.
    - گواهینامه برای سایتی به غیر از سایت شما ثبت نشده باشد.
    - فایل robots.txt پروتکل HTTPS را بلوکه نکرده باشد.
    - مراقب باشید که از گواهینامه های اس اس ال قدیمی که آسیب‌پذیر هستند استفاده نکنید و همواره از آخرین و جدیدترین نسخه های TLS استفاده کنید.
    - اطمینان حاصل کنید که Status Code های پروتکل اچ تی تی پی در پروتکل اچ تی تی پی اس هم به درستی کار می کنند. مثلاً اگر صفحه یی به درستی نمایش داده شد، کد وضعیت Ok 200 نمایش داده شده و برای صفحه های غیر قابل دسترس، کد وضعیت 404 نمایش داده شود.

    در صورتی هم که گواهینامه ی SSL را برای سایت خود فعال کردید، یکی از راه هایی که از آن طریق می توان اعتبار گواهینامه را تست کرد، Qualys Lab Tool است.

    مهاجرت از HTTP به HTTPS
    پس از استفاده از پروتکل اچ تی تی پی اس، گوگل تلقی می‌کند که شما آدرس سایت خود را تغییر داده‌اید و از همین روی، این احتمال وجود دارد که تا هفته‌ها و یا ماه ها تزلزل هایی در ترافیک سایت خود مشاهده کنید. این میزان تزلزل بسته به بزرگی و کوچکی سایت متغیر است. به گفته ی خود گوگل، داشتن XML Sitemap می‌تواند به تسریع شدن این فرایند کمک شایانی کند (برای آشنایی بیشتر با این نوع سایت مپ ها، به آموزش معرفی انواع Site Map برای بهینه سازی سایت مراجعه نمایید.) علاوه بر این، باید یکسری تنظیمات سروی نیز انجام داد تا از این پس، کلیه ی یو آر ال هایی که با ://http شروع می شدند، با ://https شروع شوند. برای این کار، باید کدهای زیر را داخل فایل htaccess. قرار دارد:

    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule (.*)
    Please, ورود or عضویت to view URLs content!
    {HTTP_HOST}%{REQUEST_URI} [R=301,L]
    این کدها، تمامی صفحات سایت شما را به پروتکل اچ تی تی پی اس ریدایرکت خواهند کرد (البته می‌شود که با استفاده از دستوراتی اختصاصی تر، صرفاً تعدادی از صفحات سایت را با اس اس ال بالا آورد.)

    لازم به ذکر است که در حال حاضر گوگل برخورداری از پروتکل اچ تی تی پی اس را به عنوان یک سیگنال مثبت در سئو سایت قلمداد می‌کند اما هرگز نباید این انتظار را داشته باشید که سئوی سایت شما بلافاصله بهبود چندانی پیدا کند چرا که هر چقدر هم که پروتکل اچ تی تی پی اس برای گوگل سیگنال مثبتی باشد، به اندازه ی محتوای فاخر و ارزشمند برای گوگل مهم نیست!

    در ضمن، باید تنظیمات وب مستر تولز را هم برای پروتکل اچ تی تی پی اس به روز رسانی کرد. به گفته ی خود گوگل، باید چهار نسخه از سایت خود به آدرس‌های زیر را در وب مستر تولز فعال سازید:

    Example Domain
    Example Domain
    Example Domain
    Example Domain
     

    ☾♔TALAYEH_A♔☽

    کاربر نگاه دانلود
    کاربر نگاه دانلود
    عضویت
    2017/05/18
    ارسالی ها
    35,488
    امتیاز واکنش
    104,218
    امتیاز
    1,376
    آشنایی با مفهوم دیتابیس و علل به وجود آمدن آن


    با ظهور نرم افزارهای دسکتاپ، اپ های موبایل و وب اپلیکیشن ها یا به عبارتی همان وب سایت های دینامیکی که کاربر می تواند با آن ها تعامل داشته باشد یک خلاء احساس می شد که کارشناسان کامپیوتر را بر آن داشت تا به دنبال چاره ای برای حل مشکل به وجود آمده باشند. در واقع زمانی که کاربران اقدام به کار با یک نرم افزار دسکتاپ کرده و یا در وب سایت های دینامیک مثلاً اقدام به ثبت نام می کردند اطلاعات فردی ایشان می بایست در جایی ذخیره می شد تا در آینده ایشان می توانستند اقدام به بازخوانی، ویرایش و به طور کلی مدیریت داده ها بپردازند. از این رو Database یا دیتابیس به معنی «پایگاه داده» که به طور خلاصه DB گفته می شود که هدف اش ایجاد مکانیسمی برای ذخیره سازی، مدیریت و بازخوانی داده ها در چارچوبی منظم بود ایجاد گشت.

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

    ممکن است این سوال برای شما پیش آید که اگر دیتابیس ها یا Spreadsheet ها یا همان «صفحه گسترده» هایی همچون اکسل همانند یکدیگر هستند پس چرا برای ذخیره سازی اطلاعات نرم افزارهای مختلف از صفحه گسترده ها استفاده نمی کنیم. پاسخ به این سوال بسیار ساده است: زیرا دیتابیس ها به مراتب قدرتمند تر از صفحه گسترده ها هستند. در واقع با استفاده از دیتابیس ها می توان کارهای بسیار پیچیده ای انجام داد که اگر نگوییم در صفحه گسترده غیر ممکن است بایستی گفت بسیار دشوار است. به طور مثال می توان آن ها تحت وب و یا اپ موبایل را مورد استفاده قرار داد، به صورت گسترده به مدیریت داده ها پرداخت، محاسبات پیچیده انجام داد و بسیاری قابلیت های منحصر به فرد دیگر.
     

    ☾♔TALAYEH_A♔☽

    کاربر نگاه دانلود
    کاربر نگاه دانلود
    عضویت
    2017/05/18
    ارسالی ها
    35,488
    امتیاز واکنش
    104,218
    امتیاز
    1,376
    آشنایی با دیتابیس های مشهور دنیا


    شاید تا به حال با شنیدن نام دیتابیس چیزی تحت عنوان SQL هم به گوش تان خورده باشد. در واقع این اصطلاح مخفف واژگان STRUCTURED QUERY LANGUAGE به معنی «زبان ساخت یافته ی جستجو» می باشد که به عنوان یکی از زبان هایی است که به طور اختصاصی در دیتابیس های مختلف مورد استفاده قرار می گیرد.

    مجدد به مثال فایل اکسل دفترچه تلفن باز می گردیم که در آموزش گذشته آن را مطرح کردیم. اگر بخواهیم ببنیم که در کلیه شماره تلفن های مرتبط با دوستان ما چند مورد از آن ها با شماره 0918 شروع می شوند، به سادگی با نوشتن چند کد اس کیو ال می توان این کار را انجام داد.

    از یک دید کلی، دیتابیس ها بر اساس نوع اطلاعاتی که در خود ذخیره می کنند را می توان دسته بندی کرد. به طور مثال، از دیتابیس های رایج می توان به دیتابیس های عددی، تصویری، متنی و ... اشاره کرد. علاوه بر این از یک دید کامپیوتری نیز می توان دیتابیس ها را به انواع دیگری دسته بندی کرد که از آن جمله می توان به Relational Database، Distributed Database، OOP Database و ... اشاره کرد. به طور کلی منظور از Relational Database دیتابیس هایی است که در آن می توان داده ها را به روش های مختلف ذخیره ساخته و بالتبع به روش های مختلفی هم به بازخوانی اطلاعات از آن ها پرداخت. منظور از Distributed Database دیتابیس هایی است که روی یک شبکه قرار گرفته و از نقاط مختلف قابل دسترسی اند. اصطلاح OOP Database به دیتابیس های مرتبط با زبان های برنامه نویسی شیء گرایی همچون جاوا، پی اچ پی، پایتون و ... اشاره می کند که این نوع از دیتابیس ها اطلاعات خود را از طریق اشیاء جمع آوری می کنند.

    پس از آشنایی با انواع دیتابیس ها حال نوبت به معرفی چند مورد از معروف ترین دیتابیس های جهان می رسد. در واقع دیتابیس های Oracle، MySQL، DB2، SQL Server، SQLite، Sybase را می توان به عنوان شماری از معروف ترین دیتابیس ها قلمداد کرد.

    در واقع دیتابیس های قدرتمند اما در عین حال پیچیده شرکت اوراکل را می توان به عنوان برگ برنده این شرکت در میان رقبایش قلمداد نمود. دیتابیس SQL Server شرکت مایکروسافت با سهولت در استفاده، سازگاری با سیستم عامل ویندوز و قابلیت های کابردیش آن را به عنوان یکی از گزینه های محبوب برای برنامه نویسانی که از محصولات شرکت بزرگ مایکروسافت استفاده می کنند مبدل ساخته است. شرکت بزرگ IBM هم از غافله عقب نمانده و دیتابیسی تحت عنوان DB2 را به بازار عرضه کرده است. این دیتابیس روی سیستم عامل های ویندوز، لینوکس و یونیکس اجرا می شود و از سازگاری خوبی با دیتابیس شرکت اوراکل برخوردار می باشد. دیتابیس Sybase هنوز هم پس از 25 سال حضور مستمر در بازار یکی از نقش های اصلی را در دنیا بازی می کند. دیتابیس MySQL در سال 2008 توسط شرکت سان مایکروسیستمز خریداری شد و پس از خریداری شدن خود شرکت سان مایکروسیستمز توسط امپراطوری اوراکل، دیتابیس MySQL تحت پرچمداری این شرکت به عنوان یکی از محبوب ترین دیتابیس های رایگان در دنیا قلمداد می شود که میلیون ها وب سایت شخصی و تجاری از این دیتابیس استفاده می کنند. دیتابیس SQLite در سال 2000 توسط آقای ریچارد هیپ طراحی شد. این دیتابیس بر خلاف دیگر دیتابیس ها به عنوان دیتابیسی قلمداد می شود که در نرم افزار یا اپلیکیشن اصطلاحاً Embed می شود. از جمله کاربردهای این دیتابیس می توان به کاربرد آن در سیستم عامل های موبایل، مرورگرهای وب و ... اشاره کرد.
     

    ☾♔TALAYEH_A♔☽

    کاربر نگاه دانلود
    کاربر نگاه دانلود
    عضویت
    2017/05/18
    ارسالی ها
    35,488
    امتیاز واکنش
    104,218
    امتیاز
    1,376
    آشنایی با مای اس کیو ال


    هم کاربران و هم وب مسترهای سایت های دینامیک برای آن که بتوانند به دیتابیس دسترسی داشته باشند به یک رابط مدیریت دیتابیس که اصطلاحاً DBMS گفته می شود نیاز دارند. DBMS ها اپلیکیشن هایی هستند که با برقراری ارتباط مابین کاربر و دیتابیس، امکان ایجاد، جستجو، ویرایش و به طور کلی مدیریت داده ها را در دیتابیس می دهند. از جمله مشهورترین رابط های مدیریت دیتابیس می توان به MySQL، Microsoft SQL Server، Oracle و ... اشاره کرد.

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

    با توجه به این که رابط مدیریت دیتابیس مای اس کیو ال متن باز بوده، رایگان است و مهم تر از همه به صورت پیش فرض با وب سرور آپاچی و زبان برنامه نویسی پی اچ پی به خوبی کار می کند و هر سه از سازگاری بسیار خوبی با یکدیگر برخوردارند، رابط مدیریت دیتابیس MySQL را به طور تخصصی مورد بررسی قرار خواهیم داد. MySQL یک رابط مدیریت دیتابیس از نوع Relational است که برای ایجاد دیتابیس خود از زبان ساده، ایمن، سریع و انعطاف پذیر «اس کیو ال» استفاده می کند. این سیستم مدیریت دیتابیس به صورت متن باز و رایگان به دنیا عرضه شده است که روی سیستم عامل های یونیکس، ویندوز و مکینتاش قابل اجرا است. این سیستم مدیریت دیتابیس با استفاده از API های خاصی می تواند از زبان های سی، سی پلاس پلاس، جاوا، پی اچ پی، پرل، پایتون و ... پشتیبانی کند.

    به خاطر داشته باشید
    این سیستم مدیریتی دیتابیس توسط یک شرکت سوئدی در سال 1995 طراحی شد که در حال حاضر این شرکت توسط اوراکل خریداری شده است.
    از جمله وب اپلیکیشن های معروف که از مای ای کیو ال استفاده می کنند می توان به ویکیپیدیا اشاره کرد و از جمله سیستم های مدیریت محتوایی هم که از این سیستم استفاده می کنند می توان به وردپرس، دروپال و جوملا اشاره کرد. در واقع با مشاهده شرکت ها و سیستم هایی که از مای اس کیو ال استفاده می کنند می توان به اهمیت این سیستم مدیریت دیتابیس پی برد.
     

    ☾♔TALAYEH_A♔☽

    کاربر نگاه دانلود
    کاربر نگاه دانلود
    عضویت
    2017/05/18
    ارسالی ها
    35,488
    امتیاز واکنش
    104,218
    امتیاز
    1,376
    مزایا و محدودیت های مای اس کیو ال


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

    به هر حال مای اس کیو ال معایب خاص خود را هم دارا است که همین معایب آن را در برخی پروژه ها به گزینه ای نامناسب مبدل می سازد. از جمله نقاط ضعف مای اس کیو ال می توان به موارد زیر اشاره کرد:
    - یکی از نقاط ضعف این سیستم عدم پشتیبانی از کلیه استاندارد های زبان اس کیو ال است.
    - نحوه عملکرد مای اس کیو ال با سرعت هارد دیسک ارتباط مستقیم دارد و سرعت پایین هارد دیسک می تواند عملکرد دیتابیس را به طور قابل توجهی تحت تاثیر قرار دهد.
     

    ☾♔TALAYEH_A♔☽

    کاربر نگاه دانلود
    کاربر نگاه دانلود
    عضویت
    2017/05/18
    ارسالی ها
    35,488
    امتیاز واکنش
    104,218
    امتیاز
    1,376
    اف تی پی چیست؟


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

    FTP در سال 1971 توسط Abhay Bhushan به منظور استفاده در مصارف نظامی و تحقیقات علمی طراحی شد و این در حالی است که پس از موفقیت در زمینه های مد نظر و با گسترش روز افزون شبکه جهانی وب مورد استقبال توسعه دهندگان قرار گرفته و بیش از پیش تکمیل شد و امروزه به طور گسترده ای توسط طراحان و برنامه نویسانی که نیاز به ارتباط با سرور دارند مورد استفاده قرار می گیرد.

    اصطلاح FTP مخفف واژگان File Transfer Protocol به معنی «پروتوکل انتقال فایل» است و پروتوکل هم به یکسری قوانین و اصولی گفته می شود که کامپیوترهایی که با یکدیگر از طریق شبکه متصل شده اند از آن قوانین برای برقراری ارتباط با یکدیگر تبعیت می کنند.

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

    چنانچه بخواهیم یکی از مواردی که تاکنون و بارها بدون این که متوجه باشیم که از اف تی پی استفاده کرده ایم را نام ببریم، بایستی به دانلود یک آهنگ یا یک پی دی اف است. در حقیقت زمانی که می خواهیم فایلی را دانلود کنیم، مرورگر ما -مثلاً فایرفاکس- این کار را از طریق اف تی پی انجام می دهد. به طور کلی اف تی پی یک نرم افزار است که نه سمت کاربر است و نه سمت سرور بلکه نرم افزاری است سمت کاربر / سرور و این در حالی است که این نرم افزار روی سرور نصب می گردد و کاربران با اتصال به آن قادر خواهند گشت درخواست های خود را برای آن ارسال نمایند.

    به منظور استفاده از اف تی پی، در حین نصب پی اچ پی می بایست پشتیبانی از اف تی پی نیز فعال گردد. لازم به ذکر است که در سیستم عامل ویندوز پشتیبانی از اف تی پی نیاز به هیچ گونه تنظیمات خاصی ندارد چرا که این کار به صورت پیش فرض در حین نصب پی اچ پی انجام می شود اما این در حالی است که به منظور فعال سازی اف تی پی در سیستم عامل های مکینتاش، لینوکس و یونیکس بایستی یکسری تنظیمات برای فعال سازی آن انجام داد.
     
    وضعیت
    موضوع بسته شده است.

    برخی موضوعات مشابه

    بالا