Forum: Rails France Déployer Radiant sur Debian avec Apache 2 et fastcgi

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
F2e71400d82506be4e92d8d761c5fe49?d=identicon&s=25 Ouroz Ouroz (ouroz)
on 2007-07-06 11:18
Bonjour,

J'essaye de déployer mon application Radiant application avec Apache 2
et fastcgi sur Debian.

J'ai modifié le fichier public/.htaccess, en ajoutant:

AddHandler fcgid-script .fcgi
et
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]


et créé un virtual host comme ceci:

[code]<VirtualHost *>
    ServerAdmin webmaster@localhost
    ServerName ruby.cms01.uperto.int
    DocumentRoot /var/www/test/public/
    ErrorLog /var/www/test/log/apache.log

    <Directory /var/www/test/public/>
        Options Indexes FollowSymLinks MultiViews ExecCGI
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>[/code]


Ca marche, quand je vais sur ruby.cms01.uperto.int, le chemin
/var/www/test/public/ est suivi et la page de login apparait, mais je
n'ai aucune image, ni stylesheets ou javascript.

Il semblerait que les images, css et javascript ne soient pas "trouvés".
Si je regarde les log, je vois que les images et stylesheets sont
récupérés avec l'adresse exacte:

[...]

Processing SiteController#show_page (for 192.168.30.63 at 2007-07-06
10:14:42) [GET]
  Parameters: {"1183563136"=>nil, "action"=>"show_page",
"url"=>["stylesheets", "admin", "main.css"], "controller"=>"site"}
Redirected to http://ruby.cms01.uperto.int/admin/welcome
Completed in 0.00555 (180 reqs/sec) | DB: 0.00288 (51%) | 302 Found
[http://ruby.cms01.uperto.int/stylesheets/admin/mai...]

[...]

Processing SiteController#show_page (for 192.168.30.63 at 2007-07-06
10:14:45) [GET]
  Parameters: {"1183563136"=>nil, "action"=>"show_page",
"url"=>["images", "admin", "view-site.gif"], "controller"=>"site"}
Redirected to http://ruby.cms01.uperto.int/admin/welcome
Completed in 0.00538 (185 reqs/sec) | DB: 0.00283 (52%) | 302 Found
[http://ruby.cms01.uperto.int/images/admin/view-sit...]

[...]



Les images sont récupérées ici: http://ruby.cms01.uperto.int/images
et le css ici: http://ruby.cms01.uperto.int/stylesheets
L'adresse devrait être remplacée par le chemin réel, donc les images et
css devraient être récupérés...

Cela ne viendrait-il pas du fait que la règle de réécriture (
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] ) redirige tout vers la page
actuelle? En effet, si je tape dans ma barre d'adresse
"http://ruby.cms01.uperto.int/images/admin/view-sit..., je
suis redirigé vers "http://ruby.cms01.uperto.int/admin/login" (si je ne
suis pas logué)...

Si vous voyez où est mon erreur...

Merci beaucoup d'avance ;)
4a7982065027f6678cf86fd469d34f08?d=identicon&s=25 renaud morvan (Guest)
on 2007-07-06 11:41
(Received via mailing list)
Bonjour,

Cela ne viendrait-il pas du fait que la règle de réécriture (
> RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] ) redirige tout vers la page
> actuelle? En effet, si je tape dans ma barre d'adresse
> "http://ruby.cms01.uperto.int/images/admin/view-sit..., je
> suis redirigé vers "http://ruby.cms01.uperto.int/admin/login" (si je ne
> suis pas logué)...
>
>
Tu renvoies tout vers fcgi or rails ne sait pas afficher tes images car
il
essaye d'executer ca en tant que controller/action

Bref il ne faut renvoyer vers fcgi qu'en dernier recourt quand le
fichier
n'existe pas sur le serveur:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]

Si tu veux rajouter la gestion du cache static pour rails tu dois
rajouter
deux règles

RewriteRule ^$ index.html [QSA]
RewriteRule ^([^.]+)$ $1.html [QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]

Mais c'est très facile à trouver sur google comme info...
F2e71400d82506be4e92d8d761c5fe49?d=identicon&s=25 Ouroz Ouroz (ouroz)
on 2007-07-06 13:04
En effet ça marche comme ça... merci beaucoup ;)

J'avais en fait pas bien compris comment marchaient ces règles...c'est
plus clair maintenant ;)
This topic is locked and can not be replied to.