mjpclab / go-http-file-server

Simple command line based HTTP file server to share local file system
MIT License
370 stars 56 forks source link

Thank you! #3

Open ropucyka opened 3 years ago

ropucyka commented 3 years ago

For this server, using it at home. Best that i found on github at this moment.

Hope to see also brute-protection feature if auth enabled. (e.g. temporal bans for ip or some other <- hm, it will not work if using reverse proxy).

Page looks Very spartans. I think linux style will be more more beautiful for this amazing project.

marjune163 commented 3 years ago

Glad to see that it helps you a bit.

It's true that some of the important features are still missing. I'm still trying to balance the complexity and functionality. For the brute-protection feature, the sever need to maintain an extra state table, checking if client made too much login attempts, and each page refresh will trigger that checking. I have no clear thinking of how to implement this feature. But let me think about it.

For page UI, the main idea is if someone is looking for a file, the most important thing is display the list clearly, could be identified clearly, with fluent interaction. Also this page tries best to make compatible with legacy browsers (e.g. IE11), which results some limts for using new features from the browser(e.g. CSS3, new JS APIs). But you are right, the UI lacks of some attractive stuff. I will think about that, but with lower priority.

ropucyka commented 3 years ago

Sorry mate, i'm just user not coder. Can give you ideas, not solutions.

But you can leave current page "as is" to be compatible with potato clients, and create new realy fully-featured, lightweight page. Server will can use option like --style [classic] or [new]

If brute-protection will trigger checking on every page refresh, i have no ideas here... Maybe server must calculate how many times for some period [1 sec., 5 sec.] client trying to download file index.html or favorite.ico, or part of page code.