2010-02-04 9 views

Respuesta

15

puede usar set :public para especificar el directorio para sus archivos estáticos. A continuación, puede servir al archivo usando send_file() por ejemplo:

get '/static_file' do 
     send_file('my_static_file') 
    end 
+0

La palabra clave de configuración fue [modificada] (https://github.com/sinatra/sinatra/blob/master/CHANGELOG.md#130--2011-09-30) de ': public' a ': public_folder' en la versión 1.3.0. – mlovic

3

Colóquelo fuera del directorio ./public. Consulte la sección Static Files del archivo README y el :static and :public configuration options.

+0

¿Cómo sería saber para mapear/xyz a abc.html con: estática? ¿File.read es la forma correcta de generar un archivo con nombre? – xyz

+0

Ahh, he entendido mal. Si configura un: public y quiere abc.html que apunte a http: //webserver/abc.html y sinatra no enrutará, solo servirá el html. Si desea una ruta personalizada y publicar un archivo estático, creo que nstehr lo tiene. Por supuesto, también podría simplemente nombrar su abc.html a xyz (o symlin) en su directorio público, pero sigo creyendo que me gusta la forma de nstehr. – Mark

+1

Aprendí algo de todos modos :) – xyz

Cuestiones relacionadas