分类 "Server" 下的文章

问题:使用tornado时,上传文件不能太大,否则无法上传
解决:因为tornado限制了上传文件的大小,可以在Application.listen的setting中设置max_buffer_size
方法:
import settings
def main():
... ...
application.listen(tornado.options.options.port, **settings.server_settings)

我的入口方法是这样的,所以我需要在settings.py文件的server_settings中加上"max_buffer_size": 1048576000,

当然为了安全起见,建议使用nginx 的上传模块https://www.nginx.com/resources/wiki/modules/upload/
参考:https://stackoverflow.com/questions/19074972/content-length-too-long-when-uploading-file-using-tornado

问题:之前是好的,更新软件包之后就出错了
解决:是因为rq没有指定包名
方法:
目录结构:
website
jobs
job_send_email.py   # 处理发送邮件的方法
server
main.py    # 入口文件
site_base.py   # 配置文件
user_handler.py   # 处理文件

在site_base.py中已经指定jobs目录了
sys.path.insert(0, os.path.realpath(os.path.join(os.path.dirname(__file__),"..",'jobs')))
所以在user_handler.py中引入 job_send_email.py 是不需要指定jobs的,否则报错
import job_send_email  # 正确
import jobs.job_send_email # 错误,python后台报错ImportError: No module named 'jobs'
但是在使用rq时需要指定jobs
正确方法:
q.enqueue("jobs.job_send_email.send_email", umail, email_subject, email_html)
错误方法:
q.enqueue("job_send_email.send_email", umail, email_subject, email_html)
这时会报错ImportError: No module named 'job_send_email'

问题:ubuntu下如何安装lnmp

方法:
1、安装php

sudo apt-get install php5-fpm php5-cli php5-dev php5-mysql php5-curl php5-gd
使用php7.0
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt install php7.0-fpm php7.0-cli php7.0-dev php7.0-mysql php7.0-curl php7.0-gd
更多拓展的安装请参考https://www.cnblogs.com/xiede/p/8999425.html

阅读全文

问题:nginx如何多个域名绑定一个项目,一个端口,但是子目录。

解决:做www.xiao.com项目时,需要做移动端,m.xiao.com,但不想再开服务,所以绑定的ip和端口就是一个

方法:
1、www.xiao.com 的nginx配置文件如下

upstream xiao {
    server 127.0.0.1:8001;
}
server {
    listen       80;
    server_name  xiao.com www.xiao.com;
    server_tokens off;
    if ($host != 'www.xiao.com'){
        rewrite ^/(.*)$ http://www.xiao.com/$1 permanent;
    }

阅读全文