O problema não estava na regra de reescrita. O arquivo tinha que ser colocado em um caminho específico dentro de .ebextensions para que funcionasse no Tomcat 8. Os arquivos de configuração também precisavam ser configurados de maneira diferente. A maioria dos exemplos fornecidos não eram para o Tomcat, então acabei colocando-os no local errado.
O que funcionou -
Em /.ebextensions/httpd/conf.d/myconf.conf , coloque -
LoadModule rewrite_module modules/mod_rewrite.so
e em /.ebextensions/httpd/conf.d/elasticbeanstalk/00_application.conf , lugar -
<VirtualHost *:80>
<Proxy *:80>
Order Allow,Deny
Allow from all
</Proxy>
ProxyPass / http://localhost:8080/ retry=0
ProxyPassReverse / http://localhost:8080/
ProxyPreserveHost on
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} =http
RewriteRule . https://%{HTTP:Host}%{REQUEST_URI} [L,R=permanent]
ErrorLog /var/log/httpd/elasticbeanstalk-error_log
</VirtualHost>
Anote o uso de arquivos .conf em vez de .config . Isso é importante!
Além disso, a falsa sensação de redirecionamento que eu estava recebendo era devido ao cache do navegador que me servia o https site. É por isso que não funcionaria quando eu limpar meu cache.