小编Jam*_*mie的帖子

错误2006:使用Python,Bottle Microframework和Apache"MySQL服务器已经消失"

在使用以下方法访问我的Web应用程序之后:
- Python 2.7
- Bottle micro framework v.10.0.6
- Apache 2.2.22
- mod_wsgi
- 在Ubuntu Server 12.04 64bit上; 我在几个小时后收到此错误:

OperationalError: (2006, 'MySQL server has gone away')
Run Code Online (Sandbox Code Playgroud)

我正在使用MySQL - Python中包含的原生MySQL.它通常发生在我不访问服务器时.我尝试关闭所有连接,我这样做,使用这个:

cursor.close()
db.close()
Run Code Online (Sandbox Code Playgroud)

其中db是标准的MySQLdb.Connection()调用.

my.cnf文件看起来像这样:

key_buffer      = 16M
max_allowed_packet  = 128M
thread_stack        = 192K
thread_cache_size       = 8
# This replaces the startup script and checks MyISAM tables if needed
# the first time they are touched
myisam-recover         = BACKUP
#max_connections        = 100
#table_cache            = 64
#thread_concurrency     = 10
Run Code Online (Sandbox Code Playgroud)

它是默认配置文件,但max_allowed_pa​​cket为128M而不是16M.

对数据库的查询非常简单,最多可以检索大约100条记录.

谁能帮我解决这个问题?我有一个想法是使用try/except但我不确定这是否真的有效. …

python mysql apache mod-wsgi bottle

5
推荐指数
1
解决办法
2万
查看次数

在没有框架的情况下,在Python中获取当前请求的URL

我试图在不使用Web框架的情况下获取Python中请求的URL.

例如,在页面上(比如说/main/index.html),用户点击一个URL转到/ main/foo/bar(/ foo/bar不存在).Apache(使用mod_wsgi)然后将用户重定向到/ main /上的PHP脚本,然后获取url并在MySQL中搜索任何匹配的字段.然后返回该字段的其余部分.这有助于PHP:

$_SERVER["REQUEST_URI"];
Run Code Online (Sandbox Code Playgroud)

我宁愿不使用PHP,因为在数据库不断变化的结构中维护PHP代码变得越来越困难.

我很确定这是一个更好的方式,任何提及都将非常感激.为了相关性,这是否可能(在Python中获取请求的URL)?我应该只使用一个框架,虽然看起来很简单吗?

提前致谢,

杰米

注意:出于安全考虑,我不想使用GET.

python url

1
推荐指数
1
解决办法
6981
查看次数

标签 统计

python ×2

apache ×1

bottle ×1

mod-wsgi ×1

mysql ×1

url ×1