انجینایکس
NginxNginx ساده به نظر میرسد تا وقتی اولین location را بنویسی و کار نکند. این مسیر منطق واقعی پیکربندی را باز میکند: چه چیزی به چه چیزی میرسد، با چه اولویتی، و آن ۵۰۲ از کجا میآید.
پیشرفت تو
درصد هر فصل از دو چیز میآید: چقدر از بخشهایش را خواندهای (۵۵٪) و چند تمرینش را تیک زدهای (۴۵٪). همهچیز داخل مرورگر خودت میماند.
فصل
فصلها به هم وابستهاند و ترتیبشان معنا دارد. هر مسیر با پروژههای نهایی تمام میشود: ساده، متوسط، پیچیده.
نصب و ساختار فایلها
کجا نصب میشود و کدام فایل را باید دست بزنی.
دستور زبان کانفیگ و contextها
directive، block، و وراثت بین contextها.
server block و virtual host
چند سایت روی یک IP و یک پورت.
در نوبت نوشتنمنطق location و اولویتها
پیچیدهترین بخش Nginx، با جدول تصمیم.
در نوبت نوشتنفایل استاتیک، کش مرورگر، فشردهسازی
gzip، brotli و هدرهای کش.
در نوبت نوشتنreverse proxy و هدرها
X-Forwarded-For و چیزهایی که اپ پشت پروکسی از دست میدهد.
در نوبت نوشتنload balancing و upstream
round-robin، least_conn، health و sticky session.
در نوبت نوشتنHTTPS، Let's Encrypt، تمدید خودکار
گواهی واقعی در پنج دقیقه و تمدید بیدردسر.
در نوبت نوشتنrate limiting و محافظت
limit_req، limit_conn و محافظت از فرم ورود.
در نوبت نوشتنلاگ و آنالیز
فرمت سفارشی، چرخش، و پیدا کردن کندترین مسیر.
در نوبت نوشتنWebSocket و آپلود حجیم
هدر Upgrade و client_max_body_size.
در نوبت نوشتنtuning: worker، buffer، timeout
عددهایی که واقعاً باید عوض شوند و آنهایی که نباید.
در نوبت نوشتنعیبیابی ۴۰۳/۵۰۲/۵۰۴
هر کد خطا یک علت مشخص دارد.
در نوبت نوشتنپروژهٔ ۱ — یک سایت استاتیک با HTTPS
سرو کردن فایل، فشردهسازی، کش و گواهی معتبر.
در نوبت نوشتنپروژهٔ سادهپروژهٔ ۲ — پروکسی جلوی یک اپ
reverse proxy با هدرهای درست، WebSocket و آپلود حجیم.
در نوبت نوشتنپروژهٔ متوسطپروژهٔ ۳ — gateway کامل
سه سرویس پشت یک Nginx با SSL، کش، load balancing و rate limiting.
در نوبت نوشتنپروژهٔ پیچیده