Difference between revisions of "Wii Web Server"
|Line 42:||Line 42:|
Use data.zip for demo files.
Use data.zip for demo files.
In verions alpha v0.81
In verions alpha v0.81 , in the xml (link below) a custom error page can be specified by
Revision as of 23:08, 10 February 2009
Dev time: 75 Hours
File:Wiiwebserver.zip - ZIP containing the meta.xml for alpha v0.73 and an icon.png
Boot using normal methods *cough* HBC *cough*.
Once running, will run itself.
To quit, press home on the wiimote.
If no wiiweb.xml is found then the old method of using the wiimote can still be used.
Place your html files in /data/web/ on the root of your sd card, must be inserted before the app is loaded. Use data.zip for demo files.
In verions alpha v0.81 - alpha v0.91, in the xml (link below) a custom error page can be specified by
<?xml version="1.0"?> <settings 404="/four04.html" 500="/five00.html" > </settings>
If no file is needed just put "nofile" in the place of the file path
There is no directory listing and your homepage must be called "index.html"
I am in need of help in order to advance the wii web server to alpha v1.0
A list of things that i need help with are below :
- Fixing undone things in the bugs section
- A decent graphical front-end
- A decent index-page that is automatically generated if no index.html or index.htm can be found
- More file type support
How to submit
Because i use windblows, i am unable to use .patch files, so instead, a source file like below should be sent to me at the address listed in the bugs section, or by posting it here. It MUST be in C
/** Name (to be put in the credits) What lines the fix applies to Any notes **/ // Start line number Fixed code // End line number
When included in the source you will be credited on your user talk page (if exists) and the /** **/ section will be included in the source file
Features to be added
- Adding update support (5% completed)
- Adding auto index page generation (0% completed)
||Recompiled for HBC 9 beta|
Now has a sane download name
||New stipped down wiiweb.xml|
Removed buggy //quit (might return later)
||Uses new wiiweb.xml which causes less crashes |
and //quit?password works 99% of the time.
||Added threading support and management|
SD code tweaks
||Added custom 404 error page|
Added custom 500 error page
||Added the option of a custom password to shut|
the server remotely using //quit?password (see README)
|alpha v0.75||Removed /tux and /yak.jpg (old and deprecated)|
Minor speed improvements
|alpha v0.74||When //quit is requested it has to be approved by pressing A or B|
Slightly shortened the time it takes to be ready after each request
|alpha v0.73||Security bugfixes|
Added "HEAD" method support
|alpha v0.71||Adds .wmv support|
Added error 500 for server errors
|alpha v0.7||Doesn't exception out when a file or page cannot be found|
Will now serve a "404 Page not found" page
|alpha v0.62||Fixed the infinite recursion|
|alpha v0.61||Removed the /a and the old testpages since they are no longer needed.|
|alpha v0.6||Can now send any file size (thanks to joedj's ftpii write_exact function)|
Ditched GRRLib to make the server smaller in size
|alpha v0.5||Can now load any file type (those listed below) from FrontSD|
|alpha v0.4||Front SD html only, loading support XD (finally !!)|
|alpha v0.31||Favicon added|
|alpha v0.3||Added wiimote support|
Added image support
|alpha v0.24b||Bug fixes for 0.24a|
//a is now back to /a, but //quit is still there for other reasons
|alpha v0.24a||Fixed the main page hyperlink to //a|
|alpha v0.24||Changed /a to //a and /quit to //quit to avoid conflicts|
Request parser rewritten, now quicker and more streamlined
|alpha v0.23||Now doesn't have to restart the server to serve more than one page |
(i.e pressing B then A)
Quitting the server is from a server path of "/quit"
|alpha v0.22||Handles links|
|alpha v0.21||Now detects the HTTP/1.x version as requested by the browser|
|alpha v0.2||Now serves a built in test page|
No longer needs telnet
|alpha v0.11||Serves html to telnet (lack of http headers)
Can accept multiple connections (not at once)
|alpha v0.1||Added Gamecube control menu control|
Added GRRLIB logo
|Beta 3||Only use on alpha v0.81 +|
|Beta 2||First uploaded version|
Added custom error pages paths
Please post new bugs on the talk page instead of here :-)
For anymore bugs, they should only be posted if :-
- They are security related
- They affect usage
If anyone has an idea or a fix then a patch (not in a .patch file) could be submitted to me by any means !!!
Preferebly @ luke dot bridges at gmail dot com
|Directory traversal vulnerabilities allows people to
sneak out of the web root. Ops, now people can "borrow"
|Done||Now blocks all ./ and ../ in path names||High|
|Fixing of folders to index.html is hardcoded and not
heuristic and will fail for sub-directories.
|500 pages uses 404 lengths||Done||Changed _404_html_size to _500_html_size||Medium|
|Indention issues, try just writing it like "else if"
and don't add any extra indention, it keeps the indention
|Done||Changed to else if||Low|
|Directories without an ending / is not redirected to
the same url, but with a slash
|Request specific info is stored in globals
(not safe for multi threading in the future)
|Done||used same idea as wiihttpd||High|
|Exact server version is not in the http reply headers||Done||Made the server version a variable and attatched it||Low|
|Date header is hardcoded to the past.||Done||Added time.h and worked out the date||Low|
|'?'s in URLs are not used properly as argument passers
(eg http://wiihostedexamplesite.com/index.html?a=b gives a 404
|If it gets a reading error (ie you remove the SD card) it should display error 500, rather than displaying an error only on the Wii itself then dumping back to HBC, causing the PC to timeout and the server to go down. Although that could be a problem since it might need to read error 500 off the SD card with the new custom error feature, it could be avoided by loading that error into RAM at the start as long as it isn't too big (in which case it should error at start and refuse to run).||Done||instead of exiting will show the built-in error 500 page
having issues with loading it into ram for long times
The following file types have proper mime types associated with them.
URL of the header file containing the file extensions supported : http://wiiwebserver.cvs.sourceforge.net/viewvc/*checkout*/wiiwebserver/main/source/mimes.h
This is almost community based !! :-)
Cboomf - Main code
Felix123 - SD card code
Teknecal - Threading basis, %20 handling, HEAD method routine, time in headers
Joedj - the write_exact function from ftpii
Muzer - pre-release testing
Henke37 - advise and help
Twiizers - starting the ball rolling