Sự hiểu biết của bạn là chính xác, nếu bạn đến từ quá khứ. Bạn mô tả khá nhiều vì nó trông giống như vào những năm 1990.
Có, nhiều ngôn ngữ có thể được thực thi trực tiếp bởi một plugin máy chủ web. Ngay trên PHP, mod_php cho Apache vẫn là cách phổ biến nhất để lưu trữ nó. Tuy nhiên, các trang web có lưu lượng truy cập cao sử dụng cách tiếp cận hiện đại hơn, chỉ sử dụng máy chủ web làm proxy cho FastCGI (trong trường hợp PHP là PHP-FPM )
đầu ra được nhúng vào các trang HTML sau đó được gửi lại cho máy khách.
Tôi nghĩ rằng bạn đang đề cập đến đầu thập niên 90 được gọi là mã spaghetti, tuy nhiên cách tiếp cận hiện đại là sử dụng một trong nhiều khung MVC. Trong trường hợp PHP có nghĩa là ví dụ Zend Framework (có nhiều lựa chọn thay thế).
Đối với ASP, có lẽ bạn đang đề cập đến cái gọi là "ASP cổ điển", đã lỗi thời. Hiện tại, đó là ASP.NET, có thể sử dụng bất kỳ ngôn ngữ .NET nào (C # là phổ biến nhất) và dĩ nhiên là .NET framework.
C và C ++ thường không được sử dụng cho ứng dụng web. Nếu vậy, các dịch vụ như vậy được triển khai dưới dạng máy chủ độc lập, dưới dạng mô-đun cho máy chủ web hoặc FastCGI .
Perl có thể được thực thi trực tiếp từ mô đun phục vụ web bằng mod_perl . Ngoài ra còn có PSGI , về cơ bản là bản sao của WSGI của Python .
Python là ngôn ngữ rất phổ biến cho các ứng dụng web. Nó có thể được thực thi trực tiếp từ máy chủ web Apache thông qua mod_python, tuy nhiên điều đó đã lỗi thời và không được khuyến nghị. Hiện tại cách để đi với Python là thông qua mô-đun máy chủ WSGI . Máy chủ WSGI được triển khai bằng Python (ví dụ: CherryPy, WebPy) hoặc sử dụng ngăn xếp web Python độc lập (mô-đun Web của Tornado và Twisted là những ví dụ điển hình). Và tất nhiên, một lần nữa, rất có thể bạn sẽ sử dụng khung MVC tương thích WSGI , Django là phiên bản phổ biến nhất (một lần nữa, nhiều lựa chọn thay thế có sẵn).
Ruby, một lần nữa ngôn ngữ rất phổ biến cho các ứng dụng web. Nổi tiếng nhất với khung web Ruby on Rails, một lần nữa là MVC. Bạn có thể thực thi Ruby trực tiếp từ mô-đun máy chủ thông qua mod_ruby hoặc qua FastCGI .
Servlets / JSP được thực thi trong các máy chủ ứng dụng J2EE độc lập, chẳng hạn như JBoss hoặc Tomcat. Nó thường được sử dụng để thêm giao diện web vào hệ thống doanh nghiệp thay vì tạo các ứng dụng web độc lập.
CGI cổ điển (tức là quá trình sinh sản trên mỗi yêu cầu) đã trở nên lỗi thời từ nhiều năm trước. Nó đã được thay thế bởi FastCGI (nơi quá trình diễn ra lâu dài, thay vì sinh ra trên mỗi yêu cầu), các mô-đun máy chủ, giao diện như WSGI và các bản sao và các giải pháp độc lập.
Ngoài ra mô hình xử lý yêu cầu đã phát triển, với CGI, đó là quy trình cho mỗi yêu cầu. Sau đó là nhóm quy trình (hoặc nhóm luồng), mỗi quy trình (luồng) xử lý một yêu cầu tại một thời điểm. Tuy nhiên, hiện nay, hầu hết các phương pháp hiện đại là dành cho các máy chủ web và các khung độc lập để sử dụng lập trình hướng sự kiện.