بطور ساده cgi كه مخفف common gateway interface هست يعني اينكه شما برنامه اي بسازيد كه روي وب سرور اجرا بشه - اين برنامه ميتونه به هر زبوني باشه ولي اكثرا perl مينويسن چون اكثر خودآموزها براساس اين زبان هست و البته زبان شيريني هم هست. الان ديگه يك روش قديمي هست و ارزش يادگيري نداره.
بهتره وقت و انرژي روي asp.net و php بگذاري. نظر شخصي من بعنوان كسي كه با هر سه روش كار كرده اين هست كه php هم يادگيريش راحته هم سريعتر اجرا ميشه ولي asp و aspx هم يادگيريش زمانبرتر هست و هم نسبت به php يك مقداري كندتر ولي بمراتب كاملتر و پايدارتر هستن.
cgi بطور كلي با unix سازگارتره و اگر ميخواهيد از اين روش استفاده كنين پيشنهاد ميكنم در محيط ويندوز نباشه تا مشكلات كمتري داشته باشين. بطور كلي هم از نظر پايداري و سرعت و هم از نظر امنيتي و سهولت برنامه نويسي و رفع اشكال در مقايسه با asp ضعيفتر هست بخصوص در كار با ديتابيس ها. البته هم asp براي ماشينهاي unix هست و هم cgi براي ويندوز ولي ...
آيا حالا بازهم ميخواي از cgi استفاده كني؟