Rails (método set_no_cache) No se puede desactivar el almacenamiento en caché del navegador en Safari y Opera

Después de usar Devise para mi autenticación, descubrí que había un agujero de seguridad en el hecho de que, después de que el usuario cierra la sesión, las variables de la sesión se conservan. Esto permite que cualquiera pueda presionar el botón Atrás y acceder a la pantalla anterior del usuario que inició sesión.

Miré estas publicacionesNum 1 Num 2 Num 3

Agregué estas líneas a mi controlador de aplicación

before_filter :set_no_cache
def set_no_cache
response.headers["Cache-Control"] = "no-cache, no-store, max-age=0, must-revalidate"
response.headers["Pragma"] = "no-cache"
response.headers["Expires"] = "Fri, 01 Jan 1990 00:00:00 GMT"
end

En el _form.html.erb agregué esto en la parte superior

<%if user_signed_in? %>
<%=link_to "Sign Out",  destroy_user_session_path, :method => :delete %><br/>
<%= form_for(@listing) do |f| %>
<% if @listing.errors.any? %>
...........

Luego probé la aplicación en Firefox, Chrome y Safari.

Firefox y Chrome estaban bien porque cerré la sesión y presioné el botón Atrás y no pude ver la pantalla anterior del usuario; sin embargo, en Safari y Opera, el comportamiento inseguro continúa. Este código no tiene efecto.

Alguna sugerencia en como arreglar esto?

Gracias

Respuestas a la pregunta(3)

Su respuesta a la pregunta