X-Git-Url: https://git.cweiske.de/stouyapi.git/blobdiff_plain/84a096829becd7e37f0fab1b938ae7d6f8f9ceb1..fb7d4b34dbb6535e5ee1a55a90978bc6f054061a:/www/.htaccess diff --git a/www/.htaccess b/www/.htaccess index 0396ea8..541105e 100644 --- a/www/.htaccess +++ b/www/.htaccess @@ -1,14 +1,73 @@ RewriteEngine on +RewriteBase / + + + ExpiresActive On + ExpiresDefault "access plus 1 day" + #rewrite details GET parameter RewriteCond %{QUERY_STRING} ^app=([^&]+) -RewriteRule ^api/v1/details /api/v1/details-data/%1.json? +RewriteCond %{DOCUMENT_ROOT}/api/v1/details-data/%1.json -f +RewriteRule ^api/v1/details /api/v1/details-data/%1.json? [END] + +# details for unknown apps. Also see .htaccess in the dummy dir +RewriteRule ^api/v1/details /api/v1/details-dummy/404? [END] RewriteRule ^api/v1/apps/(.*)/download$ /api/v1/apps/$1-download.json? [END] RewriteRule ^api/v1/apps/(.*)$ /api/v1/apps/$1.json? [END] +#rewrite developer products "only" GET parameter +RewriteCond %{QUERY_STRING} &only=([^&]+) +RewriteCond %{DOCUMENT_ROOT}/api/v1/developers/$1/products/%1.json -f +RewriteRule ^api/v1/developers/(.+)/products/ /api/v1/developers/$1/products/%1.json? [END] + RewriteRule ^api/v1/discover/?$ /api/v1/discover-data/discover.json [END] RewriteRule ^api/v1/discover/(.+)$ /api/v1/discover-data/$1.json [END] +#if directoryslash is on, gamers gets redirected to gamers/ (dir index) +# the ouya registration does not support redirects there +#TODO: Use that only for the api/v1/gamers path, not for all +ErrorDocument 400 /api/v1/gamers/register-error.json +RewriteRule ^api/v1/gamers$ /api/v1/gamers/register-error.json [R=400,END] + +#prevent redirect from gamers/me to gamers/me/ + + DirectorySlash Off + + +#Disable the next two lines to have static usernames only +RewriteRule ^api/v1/gamers/me$ /api/v1/gamers/me.php [END] +RewriteRule ^api/v1/sessions$ /api/v1/sessions.php [END] + +RewriteRule ^api/v1/gamers/me$ /api/v1/gamers/me.json [END] + +#purchased games/products +# active buy requests +RewriteCond %{REQUEST_METHOD} POST +RewriteRule ^api/v1/games/(.+)/purchases?$ /api/v1/games/purchase.php [END] + +RewriteCond %{REQUEST_FILENAME} !-f +RewriteRule ^api/v1/games/(.+)/purchases?$ /api/v1/games/purchases-empty.json [END] + +#search +# q is first parameter +RewriteCond %{QUERY_STRING} ^q=([^&]+) +RewriteCond %{DOCUMENT_ROOT}/api/v1/search-data/%1.json -f +RewriteRule ^api/v1/search /api/v1/search-data/%1.json? [END] +# q is not the first parameter +RewriteCond %{QUERY_STRING} &q=([^&]+) +RewriteCond %{DOCUMENT_ROOT}/api/v1/search-data/%1.json -f +RewriteRule ^api/v1/search /api/v1/search-data/%1.json? [END] + +# for http://clients3.google.com/generate_204 +RewriteRule ^generate_204$ /api/v1/status + #this one wants a 204 status code RewriteRule ^api/v1/status$ - [R=204,L] + +#push-to-my-ouya needs php scripting support +RewriteRule ^api/v1/queued_downloads?$ /api/v1/queued_downloads.php [END] + +RewriteCond %{REQUEST_METHOD} DELETE +RewriteRule ^api/v1/queued_downloads/(.+)?$ /api/v1/queued_downloads_delete.php?game=$1 [END]