| 1 | #
|
|---|
| 2 | # Apache configuration directives for MythWeb. Please read INSTALL for setup
|
|---|
| 3 | # requirements and troubleshooting, along with the comments in this file.
|
|---|
| 4 | #
|
|---|
| 5 |
|
|---|
| 6 | ############################################################################
|
|---|
| 7 | # If you intend to use authentication for MythWeb (see below), you will
|
|---|
| 8 | # probably also want to uncomment the following rules, which disable
|
|---|
| 9 | # authentication for MythWeb's download URLs so you can properly stream
|
|---|
| 10 | # to media players that don't work with authenticated servers.
|
|---|
| 11 | #
|
|---|
| 12 | <LocationMatch .*/pl/stream/[0-9]+/[0-9]+>
|
|---|
| 13 | Allow from all
|
|---|
| 14 | </LocationMatch>
|
|---|
| 15 | #
|
|---|
| 16 | <LocationMatch .*/music/stream.php>
|
|---|
| 17 | Allow from all
|
|---|
| 18 | </LocationMatch>
|
|---|
| 19 |
|
|---|
| 20 |
|
|---|
| 21 | #
|
|---|
| 22 | # CHANGE THESE PATHS TO MATCH YOUR MYTHWEB INSTALLATION DIRECTORY! e.g.
|
|---|
| 23 | #
|
|---|
| 24 | # /var/www
|
|---|
| 25 | # /home/www/htdocs
|
|---|
| 26 | # /var/www/html/mythweb
|
|---|
| 27 | # /srv/www/htdocs/mythweb
|
|---|
| 28 | #
|
|---|
| 29 | <Directory "/var/www/localhost/htdocs/mythweb/data">
|
|---|
| 30 | Options -All +FollowSymLinks +IncludesNoExec
|
|---|
| 31 | </Directory>
|
|---|
| 32 | <Directory "/var/www/localhost/htdocs/mythweb" >
|
|---|
| 33 |
|
|---|
| 34 | ############################################################################
|
|---|
| 35 | # I *strongly* urge you to turn on authentication for MythWeb. It is disabled
|
|---|
| 36 | # by default because it requires you to set up your own password file. Please
|
|---|
| 37 | # see the man page for htdigest and then configure the following four directives
|
|---|
| 38 | # to suit your authentication needs.
|
|---|
| 39 | #
|
|---|
| 40 | AuthType Digest
|
|---|
| 41 | AuthName "MythTV"
|
|---|
| 42 | AuthUserFile /var/www/htdigest
|
|---|
| 43 | Require valid-user
|
|---|
| 44 | BrowserMatch "MSIE" AuthDigestEnableQueryStringHack=On
|
|---|
| 45 | Order allow,deny
|
|---|
| 46 | Satisfy any
|
|---|
| 47 | #
|
|---|
| 48 | # * If you're running Apache earlier than 2.2, you will need to use
|
|---|
| 49 | # the AuthDigestFile command instead of AuthUserFile (3rd line above).
|
|---|
| 50 | #
|
|---|
| 51 | ############################################################################
|
|---|
| 52 | # Some special instructions for the MythWeb controller files
|
|---|
| 53 | #
|
|---|
| 54 | <Files mythweb.*>
|
|---|
| 55 |
|
|---|
| 56 | #
|
|---|
| 57 | # Use the following environment settings to tell MythWeb where you want it to
|
|---|
| 58 | # look to connect to the database, the name of the database to connect to, and
|
|---|
| 59 | # the authentication info to use to connect. The defaults will usually work
|
|---|
| 60 | # fine unless you've changed mythtv's mysql.txt file, or are running MythWeb on
|
|---|
| 61 | # a different server from your main backend. Make sure you have mod_env enabled.
|
|---|
| 62 | #
|
|---|
| 63 | setenv db_server "localhost"
|
|---|
| 64 | setenv db_name "mythconverg"
|
|---|
| 65 | setenv db_login ""
|
|---|
| 66 | setenv db_password ""
|
|---|
| 67 |
|
|---|
| 68 | #
|
|---|
| 69 | # By default, MythWeb uses the hostname program to look up the hostname of the
|
|---|
| 70 | # machine it runs on. If this reports incorrect data, or you run MythWeb on a
|
|---|
| 71 | # machine without the hostname program, set this to your current hostname.
|
|---|
| 72 | #
|
|---|
| 73 | # setenv hostname "my_mythbox"
|
|---|
| 74 | #
|
|---|
| 75 |
|
|---|
| 76 | # By default, php will always search the current directory for include files,
|
|---|
| 77 | # but if you wish to install these directories outside of the current path
|
|---|
| 78 | # (eg. for security reasons), set this variable to the directory that
|
|---|
| 79 | # contains the directories like languages and templates. eg.
|
|---|
| 80 | #
|
|---|
| 81 | # setenv include_path "/usr/share/mythweb"
|
|---|
| 82 |
|
|---|
| 83 | # If you want MythWeb to email php/database errors (and a backtrace) to you,
|
|---|
| 84 | # uncomment and set the email address below.
|
|---|
| 85 | #
|
|---|
| 86 | # setenv error_email "mythweb_errors@example.com"
|
|---|
| 87 | #
|
|---|
| 88 |
|
|---|
| 89 | # If your local file system is something other than UTF-8, set this variable
|
|---|
| 90 | # so that the music and video portions of MythWeb can provide proper links
|
|---|
| 91 | # to your downloadable files.
|
|---|
| 92 | #
|
|---|
| 93 | # setenv fs_encoding "ISO-8859-1"
|
|---|
| 94 |
|
|---|
| 95 | </Files>
|
|---|
| 96 |
|
|---|
| 97 | ############################################################################
|
|---|
| 98 | # The following settings relate to PHP config.
|
|---|
| 99 | #
|
|---|
| 100 |
|
|---|
| 101 | <Files *.php>
|
|---|
| 102 |
|
|---|
| 103 | # These settings are intended for apache 2.x. If your version of apache
|
|---|
| 104 | # doesn't support php_value, or things like memory_limit aren't working
|
|---|
| 105 | # as expected, then use these settings as examples for your own php.ini
|
|---|
| 106 | # files.
|
|---|
| 107 | php_value safe_mode 0
|
|---|
| 108 | php_value register_globals 0
|
|---|
| 109 | php_value magic_quotes_gpc 0
|
|---|
| 110 | php_value file_uploads 0
|
|---|
| 111 | php_value allow_url_fopen On
|
|---|
| 112 |
|
|---|
| 113 | php_value zlib.output_handler Off
|
|---|
| 114 | php_value output_handler NULL
|
|---|
| 115 |
|
|---|
| 116 | # If you have a large number of channels, you may need to increase this
|
|---|
| 117 | # value to prevent PHP from running out of memory.
|
|---|
| 118 | php_value memory_limit 256M
|
|---|
| 119 |
|
|---|
| 120 | # Note: php_flag does not work in older versions of php
|
|---|
| 121 | php_flag output_handler "NULL"
|
|---|
| 122 |
|
|---|
| 123 | </Files>
|
|---|
| 124 |
|
|---|
| 125 | ############################################################################
|
|---|
| 126 | # The settings below relate specifically to mod_rewrite and the rewrite
|
|---|
| 127 | # engine used to make the MythWeb user experience a little easier to deal
|
|---|
| 128 | # with by simplifying the URLs needed to access the various sections. Do
|
|---|
| 129 | # not touch these settings unless you really know what you're doing..
|
|---|
| 130 | #
|
|---|
| 131 |
|
|---|
| 132 | # Turn on the rewrite engine
|
|---|
| 133 | RewriteEngine on
|
|---|
| 134 |
|
|---|
| 135 | # If MythWeb is installed outside of the document root (eg. using Alias) then
|
|---|
| 136 | # you will need to set this directive to the base URL that MythWeb is visible
|
|---|
| 137 | # from externally. If you do not, the web server will return 'not found'.
|
|---|
| 138 | RewriteBase /mythweb
|
|---|
| 139 |
|
|---|
| 140 | # Skip out early if we've already been through rewrites,
|
|---|
| 141 | # or if this is a /css/, /js/ or /cache/ directory request.
|
|---|
| 142 | RewriteRule ^(css|data|images|js|themes|skins|README|INSTALL|[a-z_]+\.(php|pl))(/|$) - [L]
|
|---|
| 143 |
|
|---|
| 144 | # Redirect /pl/ requests to the perl cgi handler.
|
|---|
| 145 | RewriteRule ^(pl(/.*)?)$ mythweb.pl/$1 [QSA,L]
|
|---|
| 146 |
|
|---|
| 147 | # Redirect most of the remaining URL requests to the main mythweb script.
|
|---|
| 148 | # It will then handle any requests given to it.
|
|---|
| 149 | RewriteRule ^(.+)$ mythweb.php/$1 [QSA,L]
|
|---|
| 150 |
|
|---|
| 151 | # If you're experiencing trouble with the previous two lines in your copy of
|
|---|
| 152 | # apache, you could instead use something like:
|
|---|
| 153 | # RewriteRule ^(pl(/.*)?)$ mythweb.pl?PATH_INFO=/$1 [L,QSA]
|
|---|
| 154 | # RewriteRule ^(.+)$ mythweb.php?PATH_INFO=/$1 [L,QSA]
|
|---|
| 155 |
|
|---|
| 156 | # Catch anything else that comes through and send it to mythweb.php with no parameters.
|
|---|
| 157 | RewriteRule ^(.*)$ mythweb.php [QSA,L]
|
|---|
| 158 |
|
|---|
| 159 | ############################################################################
|
|---|
| 160 | # You really shouldn't need to edit anything below this line, so please
|
|---|
| 161 | # don't unless you know what you're doing.
|
|---|
| 162 | #
|
|---|
| 163 |
|
|---|
| 164 | # Allow .htaccess to override whatever it wants from the server config.
|
|---|
| 165 | AllowOverride All
|
|---|
| 166 |
|
|---|
| 167 | # Allow browsers to follow symlinks that point outside of the web document
|
|---|
| 168 | # tree. This is how we access music, videos, etc.
|
|---|
| 169 | Options FollowSymLinks
|
|---|
| 170 |
|
|---|
| 171 | # MythTV now uses the correct file suffix for mpeg files, so all .nuv files
|
|---|
| 172 | # should actually be NuppleVideo. However, apache probably doesn't know what
|
|---|
| 173 | # those are, so we should tell it.
|
|---|
| 174 | AddType video/nuppelvideo .nuv
|
|---|
| 175 |
|
|---|
| 176 | # Specify the MIME type for favicon.ico in case the server configuration
|
|---|
| 177 | # doesn't or in case the server configuration uses the IANA-approved MIME type
|
|---|
| 178 | # (image/vnd.microsoft.icon)--which most browsers won't recognize.
|
|---|
| 179 | AddType image/x-icon .ico
|
|---|
| 180 |
|
|---|
| 181 | # Enable mod_deflate. This works MUCH more reliably than PHP's built-in
|
|---|
| 182 | # gzip/Zlib compressors. It is disabled here because many distros seem not
|
|---|
| 183 | # to enable mod_deflate by default, but I strongly recommend that you
|
|---|
| 184 | # enable this section.
|
|---|
| 185 | #
|
|---|
| 186 | BrowserMatch ^Mozilla/4 gzip-only-text/html
|
|---|
| 187 | BrowserMatch ^Mozilla/4\.0[678] no-gzip
|
|---|
| 188 | BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
|
|---|
| 189 | #
|
|---|
| 190 | AddOutputFilterByType DEFLATE text/html
|
|---|
| 191 | AddOutputFilterByType DEFLATE text/css
|
|---|
| 192 | AddOutputFilterByType DEFLATE application/x-javascript
|
|---|
| 193 |
|
|---|
| 194 | # This is helpful for mod_deflate -- it prevents proxies from changing
|
|---|
| 195 | # the user agent to/from this server, which can prevent compression from
|
|---|
| 196 | # being enabled. It is disabled here because many distros seem not to
|
|---|
| 197 | # enable mod_headers by default, but I recommend that you enable it.
|
|---|
| 198 | #
|
|---|
| 199 | # Header append Vary User-Agent env=!dont-vary
|
|---|
| 200 |
|
|---|
| 201 | # Set up the perl handler so we can stream properly. Do not use mod_perl
|
|---|
| 202 | # because it has a tendency to hold onto child processes, which causes
|
|---|
| 203 | # problems if the browser closes on an in-progress stream.
|
|---|
| 204 | #
|
|---|
| 205 | <Files *.pl>
|
|---|
| 206 | SetHandler cgi-script
|
|---|
| 207 | Options +ExecCGI
|
|---|
| 208 | </Files>
|
|---|
| 209 |
|
|---|
| 210 | </Directory>
|
|---|