mirror of
https://github.com/smogon/pokemon-showdown-client.git
synced 2026-03-21 17:50:29 -05:00
125 lines
5.6 KiB
ApacheConf
125 lines
5.6 KiB
ApacheConf
AddType text/plain .phps
|
|
AddType application/x-tgz .tgz
|
|
AddType application/x-chrome-extension .crx
|
|
AddType application/x-web-app-manifest+json .webapp
|
|
|
|
<filesMatch "^index\.html$">
|
|
FileETag None
|
|
<ifModule mod_headers.c>
|
|
Header unset ETag
|
|
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
|
|
Header set Pragma "no-cache"
|
|
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
|
|
</ifModule>
|
|
</filesMatch>
|
|
|
|
<IfModule mod_rewrite.c>
|
|
RewriteEngine on
|
|
|
|
RewriteCond %{HTTP:X-Forwarded-Proto} ^http$
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteCond %{QUERY_STRING} !^insecure [NC]
|
|
RewriteRule ^([A-Za-z0-9-]*)$ https://play.pokemonshowdown.com/$1 [R=307,NE,L]
|
|
|
|
# basic stuff
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^appeals?\/?$ https://play.pokemonshowdown.com/view-help-request--appeal [R=302,L]
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^report\/?$ https://play.pokemonshowdown.com/view-help-request--report [R=302,L]
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^rooms?suggestions?\/?$ http://www.smogon.com/forums/threads/room-suggestions-are-no-longer-being-taken.3522130/ [R=302,L]
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^suggestions?\/?$ http://www.smogon.com/forums/threads/suggestions.3534365/ [R=302,L]
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^adminrequests?\/?$ http://www.smogon.com/forums/threads/names-rooms-and-servers-contacting-senior-staff.3538721/ [R=302,L]
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^bugs?(reports?)?\/?$ https://www.smogon.com/forums/threads/3634749/ [R=302,L]
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^rules?\/?$ http://pokemonshowdown.com/rules [R=302,L]
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^faq\/?$ http://www.smogon.com/forums/posts/6774128/ [R=302,L]
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^credits?\/?$ http://pokemonshowdown.com/credits [R=302,L]
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^news\/?$ http://pokemonshowdown.com/news [R=302,L]
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^privacy\/?$ http://pokemonshowdown.com/privacy [R=302,L]
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^contact\/?$ http://pokemonshowdown.com/contact [R=302,L]
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^dex\/?$ http://dex.pokemonshowdown.com/ [R=302,L]
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^insecure\/?$ http://play.pokemonshowdown.com/?insecure [R=302,L]
|
|
|
|
RewriteCond %{HTTP_HOST} ^www\.play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^(.*) https://play.pokemonshowdown.com/$1 [R=301,L]
|
|
|
|
RewriteRule ^style/fonts?/.*?\.(eot|svg|ttf|woff|woff2)$ - [E=SAFE_RESOURCE:1]
|
|
Header set Access-Control-Allow-Origin * env=SAFE_RESOURCE
|
|
|
|
# Redirect old battles to their corresponding replay
|
|
# RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
# RewriteRule ^battle-([a-z0-9]+-[1-6][0-9]{8})$ https://replay.pokemonshowdown.com/$1 [R=302,L]
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^battle-([a-z0-9]+-[0-9]{8})$ https://replay.pokemonshowdown.com/$1 [R=302,L]
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$ [NC]
|
|
RewriteRule ^battle-([a-z0-9]+)$ https://replay.pokemonshowdown.com/$1 [R=302,L]
|
|
|
|
# TODO: fix bug where you can't join lobby directly
|
|
RewriteRule ^lobby/?$ / [R=301,L]
|
|
|
|
# roomid with a slash after it: remove the slash, unless the roomid
|
|
# is also an actual directory
|
|
RewriteCond %{DOCUMENT_ROOT}/$1 !-d
|
|
RewriteRule ^([A-Za-z0-9][A-Za-z0-9-]*)/$ /$1 [R=301,L]
|
|
|
|
# Anything that looks like a roomid: connect to the server
|
|
RewriteRule ^$ - [E=INDEX_PAGE:1]
|
|
RewriteRule ^([A-Za-z0-9][A-Za-z0-9-]*)$ ./ [L,E=INDEX_PAGE:1]
|
|
|
|
# RewriteRule ^crossprotocol\.html$ - [E=CROSSPROTOCOL:1]
|
|
# Header set X-Frame-Options "ALLOW-FROM http://play.pokemonshowdown.com" env=CROSSPROTOCOL
|
|
|
|
# Headers for the index page.
|
|
Header set Cache-Control "no-cache, no-store, must-revalidate" env=INDEX_PAGE
|
|
Header set Pragma "no-cache" env=INDEX_PAGE
|
|
Header set Expires "0" env=INDEX_PAGE
|
|
|
|
# No direct linking to the lobby.
|
|
RewriteCond %{ENV:SCRIPT_URL} ^/(lobby/?)?$
|
|
RewriteCond %{HTTP_REFERER} !^$
|
|
RewriteCond %{HTTP_REFERER} !^https?:\/\/([a-z0-9-]+.)?(pokemonshowdown\.com|appjs)
|
|
RewriteCond %{HTTP_HOST} ^play\.pokemonshowdown\.com$
|
|
RewriteCond %{REMOTE_ADDR} !=127.0.0.1
|
|
RewriteCond %{REMOTE_ADDR} !=162.243.13.96
|
|
RewriteCond %{HTTP:CF-Connecting-IP} !=173.252.196.254
|
|
RewriteCond %{HTTP:CF-Connecting-IP} !=198.27.67.31
|
|
RewriteCond %{HTTP:CF-Connecting-IP} !=162.243.13.96
|
|
RewriteRule ^.* https://pokemonshowdown.com/ [R=303,L]
|
|
|
|
RewriteRule ^replay/battle-([A-Za-z0-9-]+)$ https://replay.pokemonshowdown.com/$1 [R=302,L]
|
|
RewriteRule ^replay/turn_(.+)\.png$ replay/turn-image.php?data=$1 [L,QSA]
|
|
|
|
RewriteCond %{QUERY_STRING} !output=html
|
|
RewriteRule ^ladder\.php$ https://pokemonshowdown.com/ladder/ [R=301,L]
|
|
|
|
RewriteRule ^~~([^:/]*)(:[0-9]*)?/action\.php$ action.php?serverid=$1 [L,QSA]
|
|
RewriteRule ^~~([^:/]*)(/.*)?$ http://$1.psim.us$2 [R=301,L]
|
|
RewriteRule ^~~([^:/]*):([0-9]*)(/.*)?$ http://$1-$2.psim.us$3 [R=301,L]
|
|
|
|
RewriteRule ^backup/ - [F]
|
|
RewriteRule ^\.git/ - [F]
|
|
RewriteRule ^data/Pokemon-Showdown/ - [F]
|
|
RewriteRule ^lib/ - [F]
|
|
RewriteRule ^githooks/ - [F]
|
|
|
|
RewriteRule ^\.gitignore$ - [F]
|
|
RewriteRule ^README\.md$ - [F]
|
|
RewriteRule ^index\.template\.html$ - [F]
|
|
RewriteRule ^testclient\.html$ - [F]
|
|
|
|
RewriteCond %{REQUEST_FILENAME} !-f
|
|
RewriteRule ^(apple-touch-icon-precomposed\.png)$ - [R=404,L]
|
|
|
|
</IfModule>
|