Hi, if you met a situation that your internet provider only provide HTTP service, and now you want to manage your hosted files, how would you get it done?

That’s what I met these days and finally I came up with a pretty nice (even perfect) solution. The finally solution is managing your hosted files through this handy FileSystemManager widget for BlogEngine.NET. 微笑

Error creating node with http://dnbegallery.org/cms/Media/Default/Packages/FileSystemManager/1.0/screenshot.png. Unable to fetch: http://dnbegallery.org/cms/Media/Default/Packages/FileSystemManager/1.0/screenshot.png --- Reason: Response code 404 (Not Found) --- Fetch details: { "attempt": 3, "method": "GET", "errorCode": "ERR_NON_2XX_3XX_RESPONSE", "responseStatusCode": 404, "responseStatusMessage": "Not Found", "requestHeaders": { "user-agent": "got (https://github.com/sindresorhus/got)", "accept-encoding": "gzip, deflate, br" }, "responseHeaders": { "date": "Wed, 27 Mar 2024 06:08:43 GMT", "server": "Apache", "expires": "Wed, 11 Jan 1984 05:00:00 GMT", "cache-control": "no-cache, must-revalidate, max-age=0", "link": "; rel=\"https://api.w.org/\"", "upgrade": "h2,h2c", "connection": "Upgrade, close", "transfer-encoding": "chunked", "content-type": "text/html; charset=UTF-8" } } ---

This widget development cost me only 1 hour and a half. But coming up with this idea cost me almost 1 week! The lesson I learned is imagination is sooooo important to solve problems. Albert Einstein is right.

Imagination is more important than knowledge. For knowledge is limited, whereas imagination embraces the entire world, stimulating progress, giving birth to evolution. It is, strictly speaking, a real factor in scientific research.

Albert Einstein

One week ago I want to upload some program files to my host, so I downloaded FileZilla. But it failed to connect to my FTP server on my host, I was shocked for a while and later I came to understand that I was using corp net. The corp net banned FTP communication. 悲伤

The next step I took was applying a Virtual Machine Host and tried to use this VM to connect my FTP server with FileZilla, but after I had applied it and tried later, I realized this way was not viable either.

I tried many ways in the next few days, none of them worked. I began to realize that the only internet communication my corp net permits is HTTP, which we use it to surf the web pages.

I started to think and think again about what I have now, have I used them all to the largest? Finally I remembered that I have this BlogEngine on my host! I logged on to my BlogEngine administration dashboard, and search “file system manage” on the gallery. With no result found, I decided to develop one myself. After the development and testing done, I packed it with NuGet and uploaded it to BlogEngine.NET gallery. Then I installed it from the administration control panel. All done! None of these steps need other internet accesses besides HTTP. The development was quite simple, but I’m really proud of myself to have figured out the problem in this way!

Now I publish this cool widget here to share it with anyone who are in need of it, or will need it in future. Maybe one day you are on the go, you are in a mobile phone or you are using a corp net like me, you will love it!

You can install it through your BlogEngine.NET gallery or you can download it from here: http://dnbegallery.org/cms/List/Widgets/FileSystemManager.

It’s not good looking though, it can do the work! I’ll use it to upload my another web service project, which will do HTTP File Transfer. So in the future I’ll use this web service more than this widget, but without this widget I can not achive this.

Enjoy!