quickserv
sozluk-cgi
quickserv | sozluk-cgi | |
---|---|---|
7 | 3 | |
317 | 210 | |
- | - | |
0.0 | 10.0 | |
over 1 year ago | about 8 years ago | |
Go | Pascal | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
quickserv
-
The beauty of CGI and simple design
> Zero external configuration, other than telling your webserver to enable CGI on your file
This is only true if you've done it before, and know what you're doing. In reality, it looks like a mess of `mod_cgi` configuration, trying different combinations of file permissions, finding the magic `cgi_bin` directory, finding the right obscure log files when there are inevitably errors, wrestling with CORS and other subtleties of HTTP headers, and other complexities that are only easy to navigate if you're already an experienced CGI user.
That being said, I love the philosophy of using CGI for scripts. Instead of using CGI itself, though, I wrote a (single-file, statically-linked) web server called "QuickServ" to bring this philosophy into the twenty-first century. It has all of the upside of CGI, but is much easier to set up and run, especially for beginners.
One of its benefits is that it automatically parses submitted HTTP forms, and converts the form fields to command line arguments. That means it's extremely easy to put existing CLIs on the web with minimal changes other than writing an HTML form front-end.
If you like CGI, I will (shamelessly) ask that you check it out!
https://github.com/jstrieb/quickserv
https://news.ycombinator.com/item?id=29002694
-
Websocketd – It's like CGI, twenty years later, for WebSockets
This is awesome! This occupies a similar niche to—and might pair well with—my user friendly, single-binary webserver with CGI-like capabilities called QuickServ. When I released that here, one of the comments was that it would be nice to have WebSocket support. Now, I can just point people to this!
https://github.com/jstrieb/quickserv
- jstrieb/quickserv: Dangerously user-friendly web server for quick prototyping and hackathons
- Introducing QuickServ • Dangerously user-friendly web server for quick prototyping and hackathons
- QuickServ • Dangerously user-friendly web server for quick prototyping and hackathons
- QuickServ – User-friendly web server (only for Local networks!)
- Show HN: QuickServ • Dangerously user-friendly web server
sozluk-cgi
-
Ask HN: What's your "it's not stupid if it works" story?
Using CGI protocol on a Windows server. IIS (Windows' own web server) basically interfaces with executables by running them, feeding them HTTP headers, and server variables through environment variables, and gets the response HTTP headers and the body from their STDOUT. It's very inefficient, of course, since every request requires spawning a new copy of the executable, but it had worked fine in its first months :)
Here is a very simple example from the original sources: https://github.com/ssg/sozluk-cgi/blob/master/hede.pas
-
The beauty of CGI and simple design
I wrote Eksi Sozluk, the most popular Turkish social platform to date, back in 1999 using Delphi as CGI executables[1]. Delphi was the tool that I knew best, and CGI worked for me at the beginning. I almost immediately started having problems with EXE files constantly active, making updates impossible (as it was Windows based), which required restarting the server for any kind of update.
CGI executables also caused problems when I switched to an Alpha AXP RISC server which emulated x86, bringing the performance to a crawl. That made me switch to classic ASP, and about 10 years later, to ASP.NET MVC with routing, unit tests, abstractions, jQuery, all the shiny things at the time.
Web didn't stop there of course; there came SPA's, React, Vue and whatnot.
Now, seeing the yearning for CGI in 2023 feels funny. Have we come full circle? :)
___
[1] https://github.com/ssg/sozluk-cgi
What are some alternatives?
websocketd - Turn any program that uses STDIN/STDOUT into a WebSocket server. Like inetd, but for WebSockets.
php - Prolog Home Page
Trusted-CGI - Lightweight runner for lambda functions/apps in CGI like mode
vehiclelogserver - Vehicle logging server for Second Life vehicles
preemptible-thread - How to preempt threads in user space
zfs - OpenZFS on Linux and FreeBSD
quickserv-examples - Example applications to run with QuickServ
FuckIt.py - The Python error steamroller.