Rails login problemi con Explorer

Ciao a tutti!
ho un problema con un sito fatto dal mio ex collega… in Firefox
funziona il login alla parte amministrativa, ma per i clienti che
utilizzano il Browser Explorer non riescono ad entrare nel sito…
Premetto che sono ancora inesperto di Ruby mi potete dare un consiglio?
Vi ringrazio :smiley:

Zani Zani wrote:

Ciao a tutti!
ho un problema con un sito fatto dal mio ex collega… in Firefox
funziona il login alla parte amministrativa, ma per i clienti che
utilizzano il Browser Explorer non riescono ad entrare nel sito…
Premetto che sono ancora inesperto di Ruby mi potete dare un consiglio?
Vi ringrazio :smiley:

Si potrebbe forse essere d’auto se ci fosse un’url per vedere almeno
l’html dell’applicazione. Meglio sarebbe sapere qual è il meccanismo di
autenticazione impiegato. E inoltre: pure voi con IE non riuscite ad
entrare?

Paolo

Paolo M. wrote:

Zani Zani wrote:

Ciao a tutti!
ho un problema con un sito fatto dal mio ex collega… in Firefox
funziona il login alla parte amministrativa, ma per i clienti che
utilizzano il Browser Explorer non riescono ad entrare nel sito…
Premetto che sono ancora inesperto di Ruby mi potete dare un consiglio?
Vi ringrazio :smiley:

Si potrebbe forse essere d’auto se ci fosse un’url per vedere almeno
l’html dell’applicazione. Meglio sarebbe sapere qual è il meccanismo di
autenticazione impiegato. E inoltre: pure voi con IE non riuscite ad
entrare?

Paolo

Ciao Paolo, putroppo anche se ti dicessi l’url la cosa risulta non
vista… il meccanismo di autenticazione è all’interno del controller
autenticazione troviamo:

def process_login
user = User.authenticate({:username => params[:username], :password
=> params[:password]})
if user.nil?
flash[:message] = ‘Le credenziali fornite non sono valide.
Controlla di aver inserito correttamente Nome Utente e Password.’.t
redirect_to session[:return_to] || login_form_url
else
if user.active?
flash[:notice] = “#{“Benvenuto”.t} #{user.name} #{user.surname}”
session[:id] = user.id
if user.admin?
redirect_to session[:return_to] || administration_url
else
redirect_to session[:return_to] || downloads_url
end
else
access_denied
end
end
end

Routes:

map.login_process ‘:locale/login/do’, :controller => ‘authentication’,
:action => ‘process_login’

map.login_form ‘:locale/login.html’, :controller => ‘authentication’,
:action => ‘login’

(è per la views)

Qualche post ajax?
Nei log i dati arrivano?
Sei in development o Production?
Cosa dicono i log di Apache?

Inoltre, io lavoro su linux e uso firefox, ma usando un pc in ufficio
con explorer non funziona.
Grazie

Alessandro S. wrote:

Qualche post ajax?
in application.html.erb:

<% if @prototype_required == true %>
<%= javascript_include_tag ‘prototype’, ‘effects’,‘builder’,
‘lightbox’ %>
<% end %>
<% if @jquery_required == true %>
<%= javascript_include_tag ‘jquery-1.3.2.min.js’,
‘jquery.maphilight.min.js’ %>
<% end %>
<% if @google_map == true %>

<% end %>

Nei log i dati arrivano?
si arrivano non ho alcun errore, non so se possa centrare cque provando
nel pc Windows usando firefox funziona tranquillamente…

Sei in development o Production?
In production

Quindi vedi le operazioni di post effettuate dalla form di login giusto?
Se sì il problema è nel controller
Nel controller ha fatto la normale new, edit, create…
Se no il problema è nella form
la form è questa:

<%= 'Inserire i propri dati di autenticazione'.t %>

<% form_tag login_process_path, :method => :post do -%>

<%= 'Nome utente'.t %>

<%= 'Password'.t %>

<%= submit_tag 'Conferma'.t, :class=> "button" %>

<% end -%>

Manca qualcosa qui secondo me… per explorer… ma non so …

Sei in development o Production?
In production
se passi in development funziona?
Non funziona cque…

HELPP ! :smiley:

<% if @prototype_required == true %>
<%= javascript_include_tag ‘prototype’, ‘effects’,‘builder’,
‘lightbox’ %>
<% end %>
<% if @jquery_required == true %>
<%= javascript_include_tag ‘jquery-1.3.2.min.js’,
‘jquery.maphilight.min.js’ %>
<% end %>

occhio a non avere required sia prototype che jquery altrimenti devi
discriminare l’uso di $

Nei log i dati arrivano?
si arrivano non ho alcun errore, non so se possa centrare cque provando
nel pc Windows usando firefox funziona tranquillamente…

Quindi vedi le operazioni di post effettuate dalla form di login giusto?
Se sì il problema è nel controller
Se no il problema è nella form

Sei in development o Production?
In production
se passi in development funziona?

Ciao,

di quale versione di explorer stiamo parlando?

Verifica se ci sono errori di javascript: in explorer 8, strumenti ->
strumenti di sviluppo, poi carichi la pagina e fai le operazioni.

pietro

Zani Zani wrote:

Quindi vedi le operazioni di post effettuate dalla form di login giusto?
Se sì il problema è nel controller
Nel controller ha fatto la normale new, edit, create…

Devi guardare nei log e vedere se arriva la chiamata al server…

Alessandro S. wrote:

Zani Zani wrote:

Quindi vedi le operazioni di post effettuate dalla form di login giusto?
Se sì il problema è nel controller
Nel controller ha fatto la normale new, edit, create…

Devi guardare nei log e vedere se arriva la chiamata al server…

ho questo in access.log:

“POST /it/login/do HTTP/1.1” 200 594 “http://www…/” “Mozilla/4.0
(compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; Mister X; .NET CLR
1.1.4322; AskTB5.5)”

    • [2009/12/03:14:31:26 +0100] “POST /it/login/do HTTP/1.1” 200 594
      http://www…/” “Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1;
      Trident/4.0; Mister X; .NET CLR 1.1.4322; AskTB5.5)”
    • [2009/12/03:14:31:27 +0100] “GET /it/download.html HTTP/1.1” 200
      3736 “http://www…/” “Mozilla/4.0 (compatible; MSIE 7.0; Windows NT
      5.1; Trident/4.0; Mister X; .NET CLR 1.1.4322; AskTB5.5)”
    • [2009/12/03:14:31:27 +0100] “POST /it/login/do HTTP/1.1” 200 594
      http://www…/” “Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1;
      Trident/4.0; Mister X; .NET CLR 1.1.4322; AskTB5.5)”
    • [2009/12/03:14:31:28 +0100] “GET /it/download.html HTTP/1.1” 200
      3736 “http://www…” "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1;
      Trident/4.0; Mister X; .NET CLR 1.1.4322; AskTB5.5)

può significare qualcosa?

Grazie :smiley:

Zani Zani wrote:

Alessandro S. wrote:

Zani Zani wrote:

Quindi vedi le operazioni di post effettuate dalla form di login giusto?
Se sì il problema è nel controller
Nel controller ha fatto la normale new, edit, create…

Devi guardare nei log e vedere se arriva la chiamata al server…

ho questo in access.log:

“POST /it/login/do HTTP/1.1” 200 594 “http://www…/” “Mozilla/4.0
(compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; Mister X; .NET CLR
1.1.4322; AskTB5.5)”

    • [2009/12/03:14:31:26 +0100] “POST /it/login/do HTTP/1.1” 200 594
      http://www…/” “Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1;
      Trident/4.0; Mister X; .NET CLR 1.1.4322; AskTB5.5)”

Bisognerebbe guardare soprattutto il log di rails e non quello del
webserver, ma se non altro da quest’ultimo sappiamo che viene fatta una
post a /it/login/do che immagino sia il login_process_path della
form_tag.
Adesso dovresti guardare il log di rails per capire che ne è di quella
richiesta una volta che arriva al controller. Meglio se lanci il server
in development mode, così hai più informazioni nel log.

Paolo

    • [2009/12/03:14:31:27 +0100] “GET /it/download.html HTTP/1.1” 200
      3736 “http://www…/” “Mozilla/4.0 (compatible; MSIE 7.0; Windows NT
      5.1; Trident/4.0; Mister X; .NET CLR 1.1.4322; AskTB5.5)”
    • [2009/12/03:14:31:27 +0100] “POST /it/login/do HTTP/1.1” 200 594
      http://www…/” “Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1;
      Trident/4.0; Mister X; .NET CLR 1.1.4322; AskTB5.5)”
    • [2009/12/03:14:31:28 +0100] “GET /it/download.html HTTP/1.1” 200
      3736 “http://www…” "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1;
      Trident/4.0; Mister X; .NET CLR 1.1.4322; AskTB5.5)

può significare qualcosa?

Grazie :smiley:

prova ad aggiungere al form

<%= hidden_field_tag :authenticity_token, form_authenticity_token -%>

Devis_

Bisognerebbe guardare soprattutto il log di rails e non quello del
webserver, ma se non altro da quest’ultimo sappiamo che viene fatta una
post a /it/login/do che immagino sia il login_process_path della
form_tag.
Adesso dovresti guardare il log di rails per capire che ne è di quella
richiesta una volta che arriva al controller. Meglio se lanci il server
in development mode, così hai più informazioni nel log.

Paolo

Ciao Paolo, scusami per la mia ignoranza ma come ripeto sono nuovo del
mestiere… usando phpmyadmin… collegandomi direttamente al server io
vedo solamente l’opzione production… come faccio a metterlo nella
modalità development mode?
quello riesco a metterlo solo in locale…
Grazie

Devis Battisti wrote:

prova ad aggiungere al form

<%= hidden_field_tag :authenticity_token, form_authenticity_token -%>

Devis_

Dubito che il problema sia questo dato che con Firefox l’applicazione
funziona. Se mancasse l’authenticity token non andrebbe con nessun
browser.

Paolo

Paolo M. wrote:

Devis Battisti wrote:

prova ad aggiungere al form

<%= hidden_field_tag :authenticity_token, form_authenticity_token -%>

Devis_

Dubito che il problema sia questo dato che con Firefox l’applicazione
funziona. Se mancasse l’authenticity token non andrebbe con nessun
browser.

Paolo
Per
<%= hidden_field_tag :authenticity_token, form_authenticity_token -%>
Niente da fare infatti… in più ho provato farlo partire in locale come
dicevi tu,ma nulla … di differente… :frowning:

Zani Zani wrote:

Bisognerebbe guardare soprattutto il log di rails e non quello del
webserver, ma se non altro da quest’ultimo sappiamo che viene fatta una
post a /it/login/do che immagino sia il login_process_path della
form_tag.
Adesso dovresti guardare il log di rails per capire che ne è di quella
richiesta una volta che arriva al controller. Meglio se lanci il server
in development mode, così hai più informazioni nel log.

Paolo

Ciao Paolo, scusami per la mia ignoranza ma come ripeto sono nuovo del
mestiere… usando phpmyadmin…

Mi sa che c’è stato almeno un fraintendimento dato che con phpmyadmin ti
colleghi a mysql, non ci lanci certo l’applicazione rails mentre era a
quella che mi riferivo. Il log che ci interessa è quello di rails non
quello del web server né quello del database server.

collegandomi direttamente al server io
vedo solamente l’opzione production… come faccio a metterlo nella
modalità development mode?
quello riesco a metterlo solo in locale…
Grazie

Lancia l’applicazione rails con ./script/server
–environment=development

Paolo

Ciao,
ricominciamo da capo.

Il primo e fondamentale passo per tentare di capire qual è il problema
e poi forse risolverlo è esaminare il log di rails.

Questo log si trova di solito in
#{RAILS_ROOT/log/production.log

dove RAILS_ROOT è la directory principale del progetto (esempio: se
application.html.erb si trova in
/da/qualche/parte/app/views/layouts/application.html.erb, allora
RAILS_ROOT è /da/qualche/parte e il log in
/da/qualche/parte/log/production.log.

È anche possibile che, premendo una serie di tasti a caso, tu risolva
prima o poi il problema, ma i log mi sembrano un buon punto di
partenza.

pietro