Jump to content
FHannes

HttpBox

Recommended Posts

I've been working on a new project every now and then when I had some spare time lately. It's called HttpBox, though the title of the app still shows ServerBox...

 

It's basically a (currently) simple webserver you can run on a windows machine. The first version is almost done, of course a lot more features will be added in the future. Currently I've spent roughly 3 hours coding this.

 

It servers a folder as website, it defaults to index.html if no file is entered and it can currently serve up about 6 file formats including html, jpg and txt, though adding more is just a matter of specifying their mime types in a text file, so no biggy. When you close the window it jumps to the tray, you click Exit to close it. The server starts and stops instantly and blocks access to any files starting with a dot as they are normally hidden on linux.

 

Screenshots:

server1.png

server2.png

 

Like/dislike? Why? (And before you mention it, SCAR is my main focus in programming, so don't worry)

Link to comment
Share on other sites

looks really cool, i could see where that could be usefull in alot of cool projects, you would need a good internet company tho to host a website with any traffic as most have a bandwidth-limit and have pretty slow upload speeds, but this could be usefull for accessing files and stuff =) i like it tho!

Link to comment
Share on other sites

So I've made the first step towards making this project a lot more interesting. From the start I've been wanting to develop a sort of dynamic server side scripting system, like PHP. And I've started implementing just that. It's still very basic, but I call it Delphi Server Pages, it's basically like PHP, but with Delphi code, and rather than mixing the code into HTML code, you just print the HTML code, I personally think that's a lot cleaner than some of the PHP coding horrors I've seen...

 

A small example:

httpbox_dsp1.png

 

The test.dsp file contains:

begin
 PrintLn('<html><head></head><body>Hello World!</body></html>');
end.

Link to comment
Share on other sites

Heh, I've now switched out the heavyweight PaxCompiler engine (SCAR 4 engine) for DWS, now I can just drop the "begin...end.". This engine is a lot more suitable for this purpose and offers a very special language syntax, it's got elements from Delphi, Delphi Prism and JavaScript.

 

EDIT: Apparently DWS allows me to make this exactly like PHP, in terms of the ability to mix it in with HTML, that's pretty funky :D

 

<html>
<head></head>
<body>
<p><?dsp Print('Hello World!'); ?></p>
</body>
</html>

Edited by Freddy
Link to comment
Share on other sites

Been documenting some functions every now and then... When I'm done with all the ones currently available, I'm adding more stuff: http://httpbox.freddy1990.com/index.php?title=Category:Functions

 

It's not progressing quite as fast as I'd like, but I'm currently spending tons of development time on SCAR.

Edited by Freddy
Link to comment
Share on other sites

I've pushed out version 0.04 of HttpBox. I've been very busy with rl stuff and SCAR lately, so the list of changes isn't quite that impressive. But I'm also still working on documenting the functions for the DSP scripting. This version is my first release of a 64-bit application.

 

Changelog:

HttpBox 0.04:
+ Ported to 64-bit
+ New DSP functions: VarGET, VarPOST
+ DSP powered by DWS 2.3 Rev 1355

 

Download: http://freddy1990.com/index.php?page=product&name=httpbox

Documentation: http://httpbox.freddy1990.com/index.php?title=HttpBox_Documentation

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
  • Create New...