Jump to navigation Jump to search
519 bytes removed ,  08:06, 24 November 2010
Undo revision 93751 by Ynurisuhy (talk)
{{Infobox homebrew
| image = [[ImageFile:Lines WiiWebServer.png]]
| title = Wii Web Server
| type = utility
| author = Cboomf, Felix123| version = alpha 1.10| licence = GPL20
| download =
| website =
| source =
| peripherals = {{Wiimote1}}{{Nunchuk}}{{WiFiClassicController}}{{InternetWiFi}}{{FrontSDInternet}}{{GCNControllerFrontSD}}{{USBMSD}}{{LesPaul}}
| hbb = yes
Dev time: 104 146 Hours
== HBC ==
! Icon || Designer
[ meta.xml Example]
[[]] - ZIP containing the meta.xml for alpha v0.73 and an icon.png
== README ==
=== Quitting ===
To quit, press home on wiimote 1.<br>{| class="wikitable" style="left;text-align:center;"press yellow fret on quitar.<br>|-press c on nunchuk connected to wiimote 1.<br>! {{Wiimote1}} ||{{Nunchuk}} ||{{ClassicController}} ||{{LesPaul}} || Actionpress home on classic controller.<br>|-press A on wiimote 1.<br>| {{WiimoteAButton}} or {{WiimoteHomeButton}} ||{{NunchukCButton}} ||{{ClassicHomeButton}} ||{{GHYellowFret}} || Quit|}
=== settings for version alpha v1.10 + ===
In a folder on the root of the sd called data create a folder called wws and make :-
* pass.txt containing your password(make sure is followed by new line)<br/>* port.txt containing the custom port number<br/>
* wwwo.txt 1 for using /www on root or 0 for /data/web
If the above files aren't found then the following defaults will be used
* pass.txt - all options that require a password are disabled<br/>* port.txt - defaults to port 80<br/>
* wwwo.txt - defaults to the same as 0 which is /data/web
Put files on in the same directories as you would on the sd card, i.e in usb://data/web/<p>
If, for example, your file is usb://data/web/index.html, then the link to it is /usb/index.html, <br/>if it is linked to as /index.html, then wii web server will load the index off of the sd card in sd://data/web/index.html
I am in need of help in order to advance the wii web server to alpha v1.5 +<br/>
A list of things that i need help with are below :
* Fixing undone things in the bugs section
* A decent graphical front-end
* 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'''<br>
<source lang="c">
Name (to be put in the credits)
What lines the fix applies to
Any notes
// Start line number
Fixed code
// End line number
=== Note ===
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
== Future ==
{| class="wikitable" style="margin: 1em auto 1em auto" border="1"
! Version || Changes || %
|alpha v1.20
|Auto generating index page if no index.html is found<br>
Admin page actually displays version and number of clients connected<br>
Properly denies POST requests with a 501 error as per RFC<br>
LibHTTP more stable
|alpha v1.30
|Add shutdown link to admin page (with password protection using http basic authentification)
|alpha v1.40
|alpha v1.50 ?
|Simplistic gui|10%
{| class="wikitable" style="margin: 1em auto 1em auto" border="1"
! Version || Changes
|alpha v1.40
|Fixed some rfc issues<br />
Now long multi-packet requests can be made<br />
Now sends a Last-Modified<br />
Implemented deflate compression for all text/* mime-types
|[ alpha v1.30]
|Password protected quitting by going to /quit, make sure password is set in /data/wws/pass.txt<br />
Password protected /admin page (same as for /quit)<br />
More HTTP rfc compliant stuff<br />
Server generated index page if index.html can't be found in a directory<br />
Support trace method<br />
Basic compression support<br />
Compiled against libogc 1.8.3<br />
Increased buffer sizes
|[ alpha v1.20]
|Vast speed improvements (no more sleeping)<br />
Compiled against libogc v1.8.1 and devkitppc r19 etc<br />
Stability issues fixed<br />
Restuctured faster code<br />
Re-coded in c++<br />
Various HTTP rfc compliance improvements
|[ alpha v1.10]
|Added option to have pages in /www directory to be compatible with [[Wiihttpd]](default uses /data/web)<br/>Added option to change port number to run on (Default : 80)<br/>Added option to set a password for admin based tasks (not yet used)(no default)<br/>Stabilised libhttp some more<br/>Now shuts down cleanly (unmounts devices, closes sockets, e.t.c)<br/>
Better "HEAD" method support
|[ alpha v1.00]
|Very basic admin page (not yet worth looking at) at /admin<br/>More stable<br/>Started to develop and intergrate [[User:Cboomf/LibHTTP]]own HTTP lib<br/>Added ability to use a custom error page for any errors<br/>
Directories no longer need a / at the end
|[ alpha v0.93]
|Less junk<br/>More options of quitting to allow for more hardware choices<br/>Now re-enabled custom 404 and 505 error pages, use is described above in readme<br/>
|[ alpha v0.92]
|[ alpha v0.91]
|Vast speed improvements<br/>Increased stability when using 404 and 500 errors<br/>?? Temporarily disabled custom error pages ??<br/>Changed from fat0:// to sd:// to fit in with new Libfat<br/>Moved source from sourceforge cvs to sourceforge svn<br/>
More supported file types
Fixed directoried ending in / not going to /index.html
|[ alpha v0.9]<br/>[ wiiweb.xml v rc1]|Recompiled for HBC 9 beta<br/>
Now has a sane download name
|[ alpha v0.82]<br/>[ wiiweb.xml v rc1]|New stipped down wiiweb.xml<br/>Removed buggy //quit (might return later)<br/>Now use the same method of quitting as ftpii and wiihttpd<br/>using a threaded home button detection routine<br/>
Small code improvements and removed unused code
|[ alpha v0.81]<br/>[ wiiweb.xml v b3]|Uses new wiiweb.xml which causes less crashes <br/>and //quit?''password'' works 99% of the time.<br/>
Various bug fixes from the table below
|[ alpha v0.8]<br/>[ wiiweb.xml v b2]|Added threading support and management<br/>
SD code tweaks
|[ alpha v0.77]<br/>[ wiiweb.xml v b2]|Added custom 404 error page<br/>Added custom 500 error page<br/>Added custom denied error page<br/>More //quit security checks<br/>
Solved two stability issues
Uses the new wiiweb.xml
|[ alpha v0.76]<br/>[ wiiweb.xml v b1]|Added the option of a custom password to shut<br/>the server remotely using //quit?password (see README)<br/>
Removed /img (old)
|[ alpha v0.75]
|Removed /tux and /yak.jpg (old and deprecated)<br/>Minor speed improvements<br/>Date and time in the header<br/>
|[ alpha v0.74]
|When //quit is requested it has to be approved by pressing A or B<br/>Slightly shortened the time it takes to be ready after each request<br/>
|[ alpha v0.73]
|Security bugfixes<br/>Added "HEAD" method support<br/>Added space in file name support<br/>Fixed disallowance of ../ or ./ for security<br/>Added .bin file support<br/>
Sends server version in header
|[ alpha v0.71]
|Adds .wmv support<br/>
Added error 500 for server errors
|[ alpha v0.7]
|Doesn't exception out when a file or page cannot be found<br/>
Will now serve a "404 Page not found" page
|[ alpha v0.61]
|Removed the /a and the old testpages since they are no longer needed.<br/>
Smaller code.
|[ alpha v0.6]
|Can now send any file size (thanks to joedj's ftpii write_exact function)<br/>Ditched GRRLib to make the server smaller in size<br/>
Cleaned up the sources
|[ alpha v0.3]
|Added wiimote support<br/>Added image support<br/>
Added /img image test link
|[ alpha v0.24b]
|Bug fixes for 0.24a<br/>
//a is now back to /a, but //quit is still there for other reasons
|[ alpha v0.24]
|Changed /a to //a and /quit to //quit to avoid conflicts<br/>
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 <br/>(i.e pressing B then A)<br/>
Quitting the server is from a server path of "/quit"
|[ alpha v0.2]
|Now serves a built in test page<br/>No longer needs telnet<br/>
Forced use of HTTP/1.1
|[ alpha v0.1]
|Added Gamecube control menu control<br/>Added GRRLIB logo<br/>Added return to loader<br/>Opens port 80<br/>Opens a socket and allows for connection<br/>
Accepts connection on open socket at port 80
== Bug fixing ==
If anyone has an idea or a fix then a patch (not in a .patch file) could be submitted to me by any means !!!<br>
Preferebly @ luke dot bridges at gmail dot com
{| class="wikitable sortable" style="margin: 1em auto 1em auto"
! Bug || Status || How Fixed || Priority
== File types ==
The following file types have proper mime types associated with them.
URL of the header file containing the file extensions supported :
== Credits ==
''This is almost community based !! :-)''
Cboomf - Main code<br/>Felix123 - SD card code<br/>Teknecal - Threading basis, %20 handling, HEAD method routine, time in headers<br/>Joedj - the write_exact function from ftpii<br/>Muzer - pre-release testing<br/>Henke37 - advise and help<br/>Lines - the icon.png that most people and the admin page uses<br/>Ruby - first gui graphics<br />
Twiizers - starting the ball rolling
[[Category:Homebrew using libfat]]


Navigation menu