*آشنایی با رایجترین ارورهای صفحات وب 
وقتی وبسایتی باز نمیشه یا درخواستی که فرستادی جواب نمیده، معمولاً یکی از این کدهای وضعیت (HTTP Status Codes) بهت نمایش داده میشه. هر کد یک معنی مشخص داره و کمک میکنه بفهمی مشکل از کجاست.
کدهای سری 4xx: خطاهای سمت کاربر (Client Errors)
400 Bad Request
سرور نمیتونه درخواست رو بهخاطر مشکل در ساختار یا فرمتش پردازش کنه.
مثال: داده ناقص، Query خراب، خطای Syntax در درخواست.
401 Unauthorized
برای ادامه نیاز به احراز هویت داری. یعنی باید لاگین کنی یا توکن معتبر بفرستی.
403 Forbidden
سرور درخواست رو فهمیده ولی اجازه دسترسی نمیده*. حتی اگر لاگین هم کرده باشی ممکنه سطح دسترسی کافی نداشته باشی.
*404 Not Found
صفحه یا منبع موردنظر پیدا نشد.
دلایل رایج: لینک اشتباه، حذف شدن فایل، آدرس ناقص.
405 Method Not Allowed
متد HTTP که فرستادی پشتیبانی نمیشه.
مثال: ارسال `POST` به URLی که فقط `GET` رو قبول میکنه.
408 Request Timeout
سرور منتظر پاسخ کامل موند ولی زمان درخواست تمام شد.
ممکنه بهخاطر اینترنت کند، تأخیر زیاد، یا قطعی اتصال باشه.
409 Conflict
درخواست با وضعیت فعلی سرور در تضاد است.
مثال: همزمانی در ویرایش داده، ثبت چیزی که قبلاً وجود دارد.
410 Gone
منبع برای همیشه* حذف شده و برگشتی در کار نیست. مشابه 404 اما با پیام قطعی: «این مورد دیگر وجود نخواهد داشت».
*413 Payload Too Large
حجم داده ارسالی بیش از حد مجاز سروره.
مثال: آپلود فایل خیلی بزرگ، ارسال Body سنگین.
415 Unsupported Media Type
نوع محتوای ارسالی (Content-Type) توسط سرور پشتیبانی نمیشه.
مثال: ارسال JSON ولی سرور فقط فرمدیتا یا XML قبول میکنه.
429 Too Many Requests* در مدت کوتاه تعداد زیادی درخواست فرستادی. سرور Rate Limit اعمال کرده تا از Spam یا overload جلوگیری کنه.
کانال آموزشی کدنایت
@codenight
وقتی وبسایتی باز نمیشه یا درخواستی که فرستادی جواب نمیده، معمولاً یکی از این کدهای وضعیت (HTTP Status Codes) بهت نمایش داده میشه. هر کد یک معنی مشخص داره و کمک میکنه بفهمی مشکل از کجاست.
سرور نمیتونه درخواست رو بهخاطر مشکل در ساختار یا فرمتش پردازش کنه.
مثال: داده ناقص، Query خراب، خطای Syntax در درخواست.
برای ادامه نیاز به احراز هویت داری. یعنی باید لاگین کنی یا توکن معتبر بفرستی.
سرور درخواست رو فهمیده ولی اجازه دسترسی نمیده*. حتی اگر لاگین هم کرده باشی ممکنه سطح دسترسی کافی نداشته باشی.
صفحه یا منبع موردنظر پیدا نشد.
دلایل رایج: لینک اشتباه، حذف شدن فایل، آدرس ناقص.
متد HTTP که فرستادی پشتیبانی نمیشه.
مثال: ارسال `POST` به URLی که فقط `GET` رو قبول میکنه.
سرور منتظر پاسخ کامل موند ولی زمان درخواست تمام شد.
ممکنه بهخاطر اینترنت کند، تأخیر زیاد، یا قطعی اتصال باشه.
درخواست با وضعیت فعلی سرور در تضاد است.
مثال: همزمانی در ویرایش داده، ثبت چیزی که قبلاً وجود دارد.
منبع برای همیشه* حذف شده و برگشتی در کار نیست. مشابه 404 اما با پیام قطعی: «این مورد دیگر وجود نخواهد داشت».
حجم داده ارسالی بیش از حد مجاز سروره.
مثال: آپلود فایل خیلی بزرگ، ارسال Body سنگین.
نوع محتوای ارسالی (Content-Type) توسط سرور پشتیبانی نمیشه.
مثال: ارسال JSON ولی سرور فقط فرمدیتا یا XML قبول میکنه.
کانال آموزشی کدنایت
@codenight
۱۴:۰۰
MongoDBNotesForProfessionals.pdf
۹۳۱.۰۴ کیلوبایت
کتاب MongoDB Notes for Professionals
از مجموعهی آموزشی GoalKicker.com
اگر دنبال یک منبع رایگان، کاربردی و فشرده برای یادگیری MongoDB هستی، این کتاب دقیقاً همون چیزیه که لازم داری!
از مقدمات تا مفاهیم پیشرفته مثل:
طراحی ساختار دادهها
Queryنویسی کارآمد
Aggregation و Indexing
اتصال به زبانهای برنامهنویسی مختلف
همه مطالب با مثالهای واقعی و نکات حرفهای ارائه شدهاند.
نسخه رایگان PDF از سایت GoalKicker
کانال آموزشی کدنایت @codenight
از مجموعهی آموزشی GoalKicker.com
اگر دنبال یک منبع رایگان، کاربردی و فشرده برای یادگیری MongoDB هستی، این کتاب دقیقاً همون چیزیه که لازم داری!
از مقدمات تا مفاهیم پیشرفته مثل:
همه مطالب با مثالهای واقعی و نکات حرفهای ارائه شدهاند.
کانال آموزشی کدنایت @codenight
۱۹:۱۳
این سه تا Npm Mirror فعلا خیلی خوب جواب دادن اکثر ورژن پکیج ها رو دارن و من خودم تاحالا محدودیتی باهاشون نداشتم
🟢 میرور چابکان: https://mirror2.chabokan.net/npm/
🟢 میرور رانفلیر: https://mirror-npm.runflare.com/
🟢 میرور مگان:https://hub.megan.ir/npm
کانال آموزشی کدنایت
@codenight
🟢 میرور چابکان: https://mirror2.chabokan.net/npm/
🟢 میرور رانفلیر: https://mirror-npm.runflare.com/
🟢 میرور مگان:https://hub.megan.ir/npm
کانال آموزشی کدنایت
@codenight
۹:۴۷
برای داکر ریجستری هم همین سه تا مخزن کاملا جوابه:
🟢 وبسایت مگان: hub.megan.ir
مثال: docker pull hub.megan.ir/nginx:latest
🟢 چابکان: https://docker.chabokan.net
مثال: From docker.chabokan.net/elasticsearch:8.10.2
🟢 لیارا:https://docker-mirror.liara.ir
مثال: docker pull docker-mirror.liara.ir/mysql:8.0
کانال آموزشی کدنایت
@codenight
🟢 وبسایت مگان: hub.megan.ir
مثال: docker pull hub.megan.ir/nginx:latest
🟢 چابکان: https://docker.chabokan.net
مثال: From docker.chabokan.net/elasticsearch:8.10.2
🟢 لیارا:https://docker-mirror.liara.ir
مثال: docker pull docker-mirror.liara.ir/mysql:8.0
کانال آموزشی کدنایت
@codenight
۹:۵۷
توی یک ماه گذشته مجبور شدیم یکی از پروژه هامون رو از یک پروایدر به یک پروایدر دیگه ببریم اما یکی از اصلی ترین مشکلاتی که داشتیم انتقال فایل ها از storage minio پروایدر اول به دوم بود چون هیچ کدوم از نرم افزار های انتقال در دسترس نبودن که بخوایم این کار رو انجام بدیم و نمیشد دانلود کرد ویکسری وی پی ان و پراکسی رو هم تست کردیم به زور تونستیم دانلود کنیم و خواستم اون برنامه ها رو هم در اختیار شما بذارم که اگر نیاز داشتید ازشون استفاده کنید:
🟢 برنامه ی Cyberduck: برنامه مدیریت فضای S3 و minio 🟢 برنامه ی S3-Browser برای مدیریت فضای S3 و Minio
در ادامه برنامه ها رو براتون میفرستم
کانال آموزشی کدنایت
@codenight
🟢 برنامه ی Cyberduck: برنامه مدیریت فضای S3 و minio 🟢 برنامه ی S3-Browser برای مدیریت فضای S3 و Minio
در ادامه برنامه ها رو براتون میفرستم
کانال آموزشی کدنایت
@codenight
۱۰:۰۶
چون اپلیکیشن بله محدودیت آپلود فایل داره لینک دانلود برنامه cyberduck رو براتون قرار میدم:
🟢 برنامه Cyberduck: https://codenight-storage.storage.iran.liara.space/Cyberduck-Installer-9.2.4.43667.exe
🟢 برنامه Cyberduck: https://codenight-storage.storage.iran.liara.space/Cyberduck-Installer-9.2.4.43667.exe
۱۱:۳۵
این برنامه هایی که بالاتر معرفی کردم بیشتر جنبه مدیریتی دارند اما اصلی ترین برنامه برای انتقال فایل ها از یک استوریج به استوریج دیگه rclone هست که این برنامه خیلی هوشمندانه عمل میکنه مثلا شما داری فایل هات رو انتقال میدی وسط انتقال اینترنت مودمت تموم میشه یا کلا قطع میشه یا باتریت تموم میشه هر چیزی دوباره عملیات انتقال رو اجرا کنی ادامه ش میده و از اول انتقال نمیده
حالا چطور ؟
برنامه rclone میاد از طریق checksum md5 یا sha1 وجود فایل رو بررسی میکنه اگر وجود داشته باشه skip میکنه و میره سراغ فایل بعدی تا زمانی که انتقال کامل بشه
حالا سر فرصت یک آموزش از rclone رو هم براتون قرار میدم
برنامه نصبی rclone: https://codenight-storage.storage.iran.liara.space/rclone-current-windows-amd64.zip
کانال آموزشی کدنایت
@codenight
حالا چطور ؟
حالا سر فرصت یک آموزش از rclone رو هم براتون قرار میدم
برنامه نصبی rclone: https://codenight-storage.storage.iran.liara.space/rclone-current-windows-amd64.zip
کانال آموزشی کدنایت
@codenight
۱۲:۰۳
سایت letsencrypt.org که برای صدور گواهی SSL ضروری است، نیز در دسترس قرار گرفته است.
https://github.comhttps://letsencrypt.org/https://react.devhttps://vercel.comhttps://ubuntu.com/https://nextjs.orghttps://www.python.org/https://link.springer.comhttps://pubmed.ncbi.nlm.nih.govhttps://www.digicert.com/https://www.sciencedirect.com/https://www.certum.eu/en/https://sourceforge.net/https://pypi.org/https://crates.iohttps://www.ieee.orghttps://www.npmjs.com/https://www.debian.org/
کانال آموزشی کدنایت
@codenight
۱۹:۰۵
وبسایت فیگما هم در دسترس قرار گرفت و میتونید ازش استفاده کنید
کدنایت | آموزش برنامه نویسی
@codenight
کدنایت | آموزش برنامه نویسی
۱۱:۳۸
اگر میخوای Redis رو بهصورت واقعی و کاربردی یاد بگیری، این دوره مخصوص توئه.
تمام مفاهیم مهم Redis رو با پروژههای کامل و عملی میسازیم:
- پیادهسازی صفها (Queues) با Redis
- ساخت Background Worker با Redis Streams
- تولیدکننده/مصرفکننده پیشرفته با
`XADD`, `XREADGROUP`, `XACK`, Consumer Groups
- طراحی Worker خودکار بدون نیاز به API (Event‑Driven Processing)
- اتصال دو سرویس با Pub/Sub بهصورت Real‑Time
- آشنایی با الگوهای واقعی دنیای میکروسرویسها با Redis
همهی مثالها با NodeJs + Express + Redis* قدمبهقدم جلو میرن و کاملاً قابل اجرا هستن.
اگر میخوای Redis رو مثل یه مهندس بکاند حرفهای یاد بگیری، این دوره عالیه.
۱۸:۰۸
TogetherIR
۱۸:۱۱
توی این اوضاع نت یکی از ابزارهایی که کار نمیکنه playground یا GraphiQL مربوط به گراف کیوال هست که باید تعدادی اسکریپت رو جهت اجرا شدن لود کنه که اون اسکریپت ها روی cdn های خارج از کشور هستن و همین باعث میشه که دیگه لود نشهو اون اسکریپت ها رو براتون آوردم که اگر کارتون لنگ اجرا شدن محیط گراف کیوال بود دیگه لنگش نباشه
کدنایت | آموزش برنامه نویسی
@codenight
کدنایت | آموزش برنامه نویسی
۱۱:۲۶
graphiql.html
۸۵۵ بایت
این سه تا فایل توی این فایل html اضافه میشن که من خودم قبلا این سه تا فایل رو روی سرور داخلی خودم اپلود کردن و لینک هاش رو توی فایل گذاشتم و فقط باید از این فایل استفاده بشه حالا چطوری ؟
۱۱:۲۸
فقط کافیه در هر زبان برنامه نویسی که هستید یک endpoint مشخص بسازید و اون فایل html رو در اون اندپوینت serve کنید و به خروجی بفرستد و محیط playground گراف کیوال براتون لود میشه
کدنایت | آموزش برنامه نویسی
@codenight
کدنایت | آموزش برنامه نویسی
۱۱:۳۴
گواهینامه افتا مجموعهای از الزامات امنیتی برای تضمین ایمنی نرمافزار، مدیریت دادهها، و جلوگیری از نفوذ و سوءاستفاده است. مهمترین نکاتی که تیم توسعه باید رعایت کند، با دستهبندی دقیق برای فرانتاند و بکاند و دواپس آورده شده.
1. استانداردهای امنیتی مورد نیاز این استانداردها محور اصلی الزامات افتا هستند و همهی نکات نوشتهشده در ادامه بر پایه آنهاست:
1.1 استانداردهای مرجع- OWASP ASVS - OWASP Top 10 - NIST SP 800-53 - ISO/IEC 27001 - امنسازی SDLC (Secure Software Development Lifecycle)
----------------------------------------
2. نکات امنیتی مخصوص تیم فرانتاند
2.1 امنیت ورودیها و دادهها- اعتبارسنجی سمت کاربر صرفاً تکمیلکننده باشد، نه اصلی. - استفاده از whitelisting به جای blacklisting. - محدودسازی طول ورودیها.
2.2 جلوگیری از حملات سمت کاربر- جلوگیری از XSS با: - استفاده از DOMPurify یا Sanitizer API - escape کردن دادهها قبل از رندر - جلوگیری از اجرای event handlerهای ناخواسته - جلوگیری از CSRF با: - شامل کردن anti-CSRF token در درخواستها - فعالسازی SameSite برای کوکیها
2.3 مدیریت امن توکنها و کوکیها- ذخیره نکردن JWT یا access token در localStorage.- استفاده از HttpOnly + Secure برای کوکیها.- عدم استفاده از session ID قابل حدس.
2.4 سیاستهای امنیتی مرورگر- پیادهسازی Content Security Policy سختگیرانه.- فعالسازی: - X-Frame-Options = DENY - X-Content-Type-Options = nosniff - Referrer-Policy = strict-origin
2.5 مدیریت کتابخانهها- استفاده از نسخه قفلشدهی پکیجها (package-lock.json).- بررسی آسیبپذیریها با ابزارهایی مانند: - npm audit - Snyk
----------------------------------------
3. نکات امنیتی مخصوص تیم بکاند
3.1 احراز هویت و مدیریت نشست- استفاده از احراز هویت چندعاملی (MFA).- پیادهسازی session timeout و inactivity timeout.- استفاده از توکنهای کوتاهعمر (Short-lived tokens).
3.2 امنیت API- الزام احراز هویت حتی برای درخواستهای غیراحساس. - محدودسازی نرخ درخواستها (Rate Limiting). - جلوگیری از brute-force با: - Captcha - account lockout - اعتبارسنجی نوع داده در هر endpoint.
3.3 مدیریت امن رمزها و اطلاعات حساس- استفاده از رمزنگاری استاندارد: - AES-256 برای دادههای حساس - TLS 1.2+ برای ارتباطات - هش کردن رمز عبور با: - Argon2 - bcrypt - ذخیره نکردن کلیدها در مخزن کد؛ استفاده از Secret Manager.
3.4 کنترل دسترسی- پیادهسازی RBAC (Role-Based Access Control).- بررسی سطح دسترسی در هر endpoint.- جلوگیری از IDOR با اعتبارسنجی دقیق شناسهها.
3.5 امنیت دیتابیس- جلوگیری از SQL Injection با: - Prepared Statement - ORM امن - حداقلسازی مجوزهای پایگاه داده.- فعالسازی audit log.
3.6 مدیریت خطا- عدم نمایش stack trace در محیط production.- تولید log امن: - حذف داده حساس (masking) - جلوگیری از log injection
----------------------------------------
4. امنیت در سطح DevOps و چرخه توسعه (مربوط به کل تیم)
4.1 CI/CD امن- اجرای تست امنیتی خودکار (SAST/DAST).- بررسی آسیبپذیریها قبل از build.- Hardening محیط runnerها.
4.2 کنترل نسخه و مدیریت مخزن- جلوگیری از push اطلاعات حساس.- استفاده از branch protection.- الزام بررسی کد (Code Review) در Merge Requestها.
4.3 مدیریت محیط و کانتینرها- بهروزرسانی منظم پایهتصاویر (Base Image).- اجرای با حداقل مجوز در Docker.- جلوگیری از ذخیره secrets در image.
کانال آموزشی کدنایت | آموزش برنامه نویسی
@codenight
1. استانداردهای امنیتی مورد نیاز این استانداردها محور اصلی الزامات افتا هستند و همهی نکات نوشتهشده در ادامه بر پایه آنهاست:
1.1 استانداردهای مرجع- OWASP ASVS - OWASP Top 10 - NIST SP 800-53 - ISO/IEC 27001 - امنسازی SDLC (Secure Software Development Lifecycle)
----------------------------------------
2. نکات امنیتی مخصوص تیم فرانتاند
2.1 امنیت ورودیها و دادهها- اعتبارسنجی سمت کاربر صرفاً تکمیلکننده باشد، نه اصلی. - استفاده از whitelisting به جای blacklisting. - محدودسازی طول ورودیها.
2.2 جلوگیری از حملات سمت کاربر- جلوگیری از XSS با: - استفاده از DOMPurify یا Sanitizer API - escape کردن دادهها قبل از رندر - جلوگیری از اجرای event handlerهای ناخواسته - جلوگیری از CSRF با: - شامل کردن anti-CSRF token در درخواستها - فعالسازی SameSite برای کوکیها
2.3 مدیریت امن توکنها و کوکیها- ذخیره نکردن JWT یا access token در localStorage.- استفاده از HttpOnly + Secure برای کوکیها.- عدم استفاده از session ID قابل حدس.
2.4 سیاستهای امنیتی مرورگر- پیادهسازی Content Security Policy سختگیرانه.- فعالسازی: - X-Frame-Options = DENY - X-Content-Type-Options = nosniff - Referrer-Policy = strict-origin
2.5 مدیریت کتابخانهها- استفاده از نسخه قفلشدهی پکیجها (package-lock.json).- بررسی آسیبپذیریها با ابزارهایی مانند: - npm audit - Snyk
----------------------------------------
3. نکات امنیتی مخصوص تیم بکاند
3.1 احراز هویت و مدیریت نشست- استفاده از احراز هویت چندعاملی (MFA).- پیادهسازی session timeout و inactivity timeout.- استفاده از توکنهای کوتاهعمر (Short-lived tokens).
3.2 امنیت API- الزام احراز هویت حتی برای درخواستهای غیراحساس. - محدودسازی نرخ درخواستها (Rate Limiting). - جلوگیری از brute-force با: - Captcha - account lockout - اعتبارسنجی نوع داده در هر endpoint.
3.3 مدیریت امن رمزها و اطلاعات حساس- استفاده از رمزنگاری استاندارد: - AES-256 برای دادههای حساس - TLS 1.2+ برای ارتباطات - هش کردن رمز عبور با: - Argon2 - bcrypt - ذخیره نکردن کلیدها در مخزن کد؛ استفاده از Secret Manager.
3.4 کنترل دسترسی- پیادهسازی RBAC (Role-Based Access Control).- بررسی سطح دسترسی در هر endpoint.- جلوگیری از IDOR با اعتبارسنجی دقیق شناسهها.
3.5 امنیت دیتابیس- جلوگیری از SQL Injection با: - Prepared Statement - ORM امن - حداقلسازی مجوزهای پایگاه داده.- فعالسازی audit log.
3.6 مدیریت خطا- عدم نمایش stack trace در محیط production.- تولید log امن: - حذف داده حساس (masking) - جلوگیری از log injection
----------------------------------------
4. امنیت در سطح DevOps و چرخه توسعه (مربوط به کل تیم)
4.1 CI/CD امن- اجرای تست امنیتی خودکار (SAST/DAST).- بررسی آسیبپذیریها قبل از build.- Hardening محیط runnerها.
4.2 کنترل نسخه و مدیریت مخزن- جلوگیری از push اطلاعات حساس.- استفاده از branch protection.- الزام بررسی کد (Code Review) در Merge Requestها.
4.3 مدیریت محیط و کانتینرها- بهروزرسانی منظم پایهتصاویر (Base Image).- اجرای با حداقل مجوز در Docker.- جلوگیری از ذخیره secrets در image.
کانال آموزشی کدنایت | آموزش برنامه نویسی
۱۱:۱۴
بالاخره رکورد دوره جامع توابع کاربردی در MySQL هم به پایان رسید، کاملاً کاربردی و جامع تولید شده.
توی این دوره توابع و قابلیتهای پیشرفته مایاسکیوال رو به صورت واقعی یاد میگیری و در پروژههای حرفهای به کار میبری
در این دوره، تمام مفاهیم و تکنیکهای مهم توابع کاربردی MySQL رو با مثالهای عملی و سناریوهای واقعی بررسی کردیم:
موضوعاتی که پوشش دادیم:
- کار با انواع توابع داخلی MySQL (ریاضی، رشتهای، تاریخ و ...)
- پیادهسازی توابع Aggregation اختصاصی
- توابع Conditional به صورت کاربردی
- استفاده از توابع برای بهینه سازی Query ها
- مدیریت و پردازش دادههای پیچیده با توابع ترکیبی
- کار با توابع مخصوص جیسون ها و آرایه ها
- توابع رمزنگاری و هش داده ها
- نکات و ترفندهای کاربردی برای بهینه سازی دیتابیس
جهت اطلاعات بیشتر و ثبت نام : https://codenight.ir/courses/mysql-functionsتوابع کاربردی MySQL رو یک بار برای همیشه به صورت حرفهای یاد بگیری. 
۶:۳۲