1This is the README file for the MythWeb package.
2February 16, 2008
3
4Version: .26
5(c) 2002-2010 Chris Petersen <cpetersen(a)mythtv.org>
6 Rob Smith <rsmith(a)mythtv.org>
7 Isaac Richards <isaacr(a)mythtv.org>
8 and others... (see mythtv.org commit logs for details)
9
10MythWeb is distributed under the GNU GENERAL PUBLIC LICENSE version 2, and where
11noted with the @license tag, the LESSER GENERAL PUBLIC LICENSE version 2.
12Please see http://www.gnu.org for details and the specific text of the license.
13
14
15========
16Contents
17========
18
191.0 About
202.0 Installation
213.0 FAQs
224.0 Submitting Patches
23
24=========
251.0 About
26=========
27
28 MythWeb is a set of php files intended (note the use future tense)
29to let you access your listings, flag shows for recording, delete
30recordings, etc., from a web browser. At some point in the future, it may
31allow you to play your recorded content (music and/or(?) video) across a
32network. Then again, it may not.
33
34 Note that MythWeb is totally insecure and makes no pretense of
35including any security mechanisms of any sort. You should really only run it
36on an isolated network or (at the very least) behind a well secured firewall.
37
38================
392.0 Installation
40================
41
42See INSTALL document.
43
44========
453.0 FAQs
46========
47
48Q: Why do a bunch of the images have little X's over them when using IE?
49A: The hack used to make IE display transparent PNG's relies on a hard-coded
50 image address in js/pngbehavior.htc. If your MythWeb installation is
51 anywhere other than the root directory, the default won't work and you will
52 have to hand-edit the file with the correct path. Look for the line that
53 contains "/skins/default/img/spacer.gif" -- usually adding a /mythweb at the
54 start of the string will solve your problem. You will also need to edit
55 the alpha_png class in each of the style.css files in the skin directories.
56
57Q: Why don't my sessions stick? (often manifests as sorting issues or settings
58 not storing properly)
59A: Make sure that apache's AllowOverride setting is correct, as detailed in
60 INSTRUCTIONS above. You could also try enabling authentication. MythWeb
61 now stores special session information for authenticated users so that you
62 always get your own settings when logging in, no matter where you connect
63 from.
64
65Q: Why is my browser trying to display the PHP code instead of the server
66 executing it for me?
67A: First, make sure that you have PHP enabled in your webserver settings. Once
68 you have made sure that this is the case, verify that you have disabled
69 both zlib.output_handler and ob_gzhandler in /etc/php.ini.
70
71Q: I want to access mythweb from the rest of the internet. How do I make it
72 more secure?
73A: The included mythweb.conf.apache file contains commented-out apache controls
74 for enabling htdigest password authentication. If you uncomment these, and
75 create /var/www/htdigest (see `man htdigest` for details on how to do this),
76 you will have some rudimentary password protection. Combine this with
77 making your mythweb connect only via SSL (see your webserver documentation
78 for details), and you will have mythweb as secure as you can get without
79 some fancy firewall rules.
80
81Q: I've changed my theme to one that doesn't have a "settings" section. Help!
82A: Access any of the mythweb files and include RESET_TMPL=yes among the URL
83 parameters (eg. http://my.mythweb.tld/settings?RESET_TMPL=yes ). This
84 will reset your theme to Default, where you can readjust your settings as
85 needed.
86
87Q: I can't open the status link, and get an error about url_fopen, what's
88 wrong?
89A: Some distributions (gentoo in particular) disable the allow_url_fopen
90 setting by default, and php often ignores this setting when it comes from
91 your webserver config. You will need to edit your /etc/php.ini file (or
92 wherever it is in your distribution) and set the value of allow_url_fopen
93 to On.
94
95Q: Why are some of these files licensed as LGPL and others as GPL?
96A: I (Chris Petersen) share a lot of my work between open source projects and
97 my paying job and contracts. In an effort to keep things straight when
98 porting changes back and forth between libraries, I changed the license
99 on some files (particularly javascript libraries) to LGPL. There are also
100 a handful of files that are licensed as GPL, but are licensed elsewhere as
101 LGPL (these are documented in the files themselves).
102
103Q: Where did .htaccess go?
104A: .htaccess has been replaced by apache- and lighttpd-specific configuration
105 files. Your old .htaccess file should still work fine, but I encourage you
106 to use the new conf file, since it reduces some of the load on the webserver,
107 and takes advantage of some features not accessible through .htaccess.
108
109Q: Where did the config files go?
110A: All configuration was moved either into apache conf files or into the
111 settings section of mythweb itself.
112
113Q: I've fixed a bug (or added a feature), how do I submit my patch?
114A: First, create your patch against mythweb git with "git diff head", having made
115 sure that your code is indented with 4 spaces and not tabs. Next, post the
116 patch on the MythTV Trac Server ( https://code.mythtv.org/trac/ ) as
117 described on the Trac server's home page. Please include a detailed
118 description of your patch on the ticket. Select the ticket Type "patch" and
119 component "mythweb". If you don't hear back from me or see the patch
120 committed right away, don't worry. As long as you follow these
121 instructions, I will at least get back to you one way or another --
122 eventually.
123
124Q: I'm trying to stream audio/video, but it's not working.
125A: First, make sure that if you have enabled some form of authentication that
126 you also enabled the appropriate <LocationMatch> lines in your mythweb.conf.
127 Many programs do not work with authenticated servers. Secondly, if your
128 installation of MythWeb runs over https, you may just be out of luck, since
129 many media players simply will not play files from a secure connection.
130 There is a value in the music settings within MythWeb that will let you
131 force music streaming over http, but keep in mind that this will require you
132 to set up an alternate version of mythweb on the same server, but without
133 ssl enabled.
134
135Q: I get a "500 server error" (or some other number) when trying to view
136 MythWeb.
137A: Check your apache logs for details about what caused the error. Usually,
138 it means that you didn't set up a required module. Read the
139 mythweb.conf.apache file in more detail to make sure you didn't miss
140 an important setup file.
141
142Q: I can't see any thumbnail images of the recordings on my CIFS/SMB share.
143A: There is a bug in the Linux CIFS driver that is triggered by Apache when
144 it uses 'sendfile' to send an image. To work around it, add the following
145 line to your Apache configuration (httpd.conf) file...
146 EnableSendfile Off
147 See http://httpd.apache.org/docs/2.2/mod/core.html#enablesendfile for info.
148
149Q: MythWeb complains about "Warning: Unknown Programme" after Daylight Saving
150 Time has started/finished.
151A: PHP may not have determined your local timezone correctly. Read the PHP
152 section of MythWeb's INSTALL file to find out how to correctly configure
153 your timezone in PHP.
154
155Q: Why is my MythWeb install locked?
156A: Given the absolutely huge number of open mythweb installs, we have added in
157 a automatic lockdown feature when we detect a bot or the like. This is to
158 prevent your install from being indexed, and having all your recordings
159 deleted or someone finding it and setting it to record opera 24x7.
160
161Q: So... how do I unlock the install?
162A: You can unlock the install by removing the file the message screen gives
163 you, but you should secure the install before you do that (read INSTALL)
164
165Q: I don't like you protecting my data... I want the world to mess with my
166 MythTV install!
167A: If you want to disable this feature, set the apache envirnment var
168 MYTHWEB_LOCKDOWN_DISABLE to true and remove the lockdown file, and
169 we will no longer try to protect you.
170
171======================
1724.0 Submitting Patches
173======================
174
175I'm always open to people submitting patches. Please submit the patch as
176described in the final FAQ above.
177
178Please create patches against the most recent version of git. I can deal with
179other "diff -u" patches, but if there have been any major changes in git (there
180occasionally are), I won't put much effort into trying to make your patch work,
181so please just use git.
182