He estado teniendo dificultades para obtener algo más que un simple índice/para regresar correctamente utilizando bottle.py en un entorno CGI. Cuando intento regresar/Hola, obtengo una respuesta 404. Sin embargo, si solicito /index.py/helloProblemas con las URL de enrutamiento usando CGI y Bottle.py
import bottle
from bottle import route
@route('/')
def index():
return 'Index'
@route('/hello')
def hello():
return 'Hello'
if __name__ == '__main__':
from wsgiref.handlers import CGIHandler
CGIHandler().run(bottle.default_app())
Y aquí está mi archivo .htaccess
DirectoryIndex index.py
<ifmodule mod_rewrite.c="">
RewriteEngine on
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.py/$1 [L]
</ifmodule>
he copiado gran parte del código de aquí lo estoy usando DH y parecía relevante : http://blog.coderonfire.com/2010/02/running-bottle-python-micro-framework.html
Gracias por ayudarnos.
Gracias, esto funciona. Tuve que eliminar el precedente/en /index.py/$1 pero luego funciona perfectamente. – Risingson
@enrico, no estoy seguro de que me guste tu edición. Mejor eliminaría la barra inicial en lugar de eliminar RewriteBase. – newtover
El ajuste RewriteBase parece excesivo cuando solo se trata de una barra inclinada, pero sin duda facilita las cosas si alguna vez cambia. Sin embargo, la verdadera razón por la que no solo eliminé la barra diagonal es una edición que debe tener al menos 6 caracteres, debido al filtro tonto de "edición significativa". Puede volver a colocarlo y eliminar la barra si así lo prefiere. – Enrico