Geri qayıt
C və CGI 2026-cı ildə kommersiya veb məhsulunə hərəkət verir
SiTech AI Team3 dəq oxu

C və CGI 2026-cı ildə kommersiya veb məhsulunə hərəkət verir

Kory Profit marketyour.games adlı kommersiya veb məhsulunu hesablar, axtarış, qovluqlar, Stripe ödənişləri və Postmark e-poçtları ilə, C və CGI istifadə etməklə OpenBSD-də buraxılb. Tək bütün xidmətləri təmin edir.

CGI-də hazırlanmış kommersiya tətbiqi 2026-cı ildə

Kory Profit marketyour.games-i kommersiya veb məhsulu kimi buraxdığını bildirir; o, C-də yazılıb və CGI vasitəsilə icra olunur. Məhsulda istifadəçi hesabları, məzmun yaradıcıları üçün axtarış paneli, məzmunu nizamlamaq üçün qovluqlar, Stripe ilə ödənişlər və Postmark ilə tranzaktya e-poçtları daxildir. O, proqressiv gücləndirməyə əməl edir və JavaScript tələb etmir.

Stek BCHS-dir: OpenBSD, C, httpd və SQLite. Ne çərçivə, ne şablonlaşdırma dili, ne ayrıca verilənlər bazası serveri, ne də konteyner yoxdur. C proqramı CGI mühit dəyişənlərini oxuyub cavab verir, C kodu birbaşa HTML çıxarır, SQLite-nin C API-si isə verilənlər bazası faylını açır. Yerləşdirmə statik tərtib edilmiş bütandır — onu sadəcə bir qovluğa atmaq kifayətdir.

Bir bütün və üç kitabxana

Hər sorğu yeni proses yaradır, ona görə də yeni versiyanı yeniləmək bir faylı dəyişmək deməkdir. Profit-ə görə, server yenidən başladılmır və heç bir gecikmə olmur — yeni sorğular sadəcə yeni bütünü işə salır. OpenBSD pledge və unveil kimi susmaya görə gələn parametrləri və alətləri təmin edir ki, C proqramını qorusun, httpd isə susmaya görə chroot-dan xidmət edir, beləliklə CGI bütünü sandbox-a əlavə olunub.

Əlavə kitabxanalar: libcurl — Stripe və Postmark-a yığılan sorğular üçün; libsodium — təsadüfi identifikatorlar generasiyası, parolların heşlənməsi və Stripe webhook HMAC yoxlaması üçün; və libcjson — JSON emalı üçün. Yalnız libcurl və libsodium qurma asılılıqlarıdır. libcjson xarici asılılığı olmayan tək C faylıdır, SQLite isə onun resmi amalgamation istifadə edir. Hər ikisi layihəyə birləşdirilib və layihə ilə birlikdə tərtib olunur.

Profit httpd-nin bütün trafikini CGI bütününə yönləndirir və onları icra oluna bilən fayl kimi tərtib edir ki, yaddaşdan yerləşsin. Onun sözünə görə, təmiz qurma bir neçə saniyə çəkir, yenidən qurma isə yarım saniyədən az. Onun qurma zinciri — C kompilyatoru və üç kitabxana, əsas redaktoru isə plugsiz Vim-dir.

Nə dəyişəcək

CGI hazır formatda çox az imkan verir, ona görə də hələ cookie emalı və yaradılması, query parametrlərinin emalı və validasiyası, form məlumatlarının emalı və validasiyası və çıxışın escaping-ə dair utility-lər yazmaq lazımdır. Profit öz variantını cgi.h adlı bir başlıq faylında yazıb, lakin bunun düzgün həll olduğına əmin deyil. O, kcgi kimi kitabxanaların mövcudd qeyd edir, lakin onların istifadəsi onların API-si və təhlükəsizlik modelini qəbul etmək deməkdir, o isə utility-ləri stb kitabxanaların stilində istəyirdi.

Onun nəticəsi odur ki, CGI köhnədir, lakin unudulmayıb. Proses fork-indən daha ucuzdur və heç vaxt olmadığı qədər bahalı deyil, FastCGI isə fork heç vaxt problemə çevrilməzsə, ehtiyat variantdır. Məhsul, 2004-cü ildə standartlaşdırılmış xidmət modelinə malik bir bütün üzərində işləyir və onda indiyə qədər buraxdığı hər hərəkətdən dəfəli dəyişən hissə var.

Mənbələr: prophitt.me

SSiTech

SiTech — AI ilə gücləndirilmiş veb hazırlanması

Sürətli və müasir saytlar qurur, AI-ı real biznes proseslərinə gətiririk. Layihəniz və ya sualınız var? Kömək etməyə hazırıq.