我设法设置了我的nginx.conf文件,它看起来像这样:
root www www;
worker_processes 1;
worker_rlimit_nofile 8192;
events {
worker_connections 8000;
accept_mutex off;
}
error_log logs/error.log;
pid logs/nginx.pid;
http {
# Set the mime-types
include mime.types;
# And the fallback mime-type
default_type application/octet-stream;
# Format for our log files
log_format main '$remote_addr - $remote_user [$time_local] $status '
'"$request" $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
# Click tracking!
access_log logs/access.log main;
# ~2 seconds is often enough for HTML/CSS, but connections in
# Nginx are cheap, so generally it's safe to increase it
keepalive_timeout 5;
# You usually want to serve static files with Nginx
sendfile on;
tcp_nopush on; # off may be better for Comet/long-poll stuff
tcp_nodelay off; # on may be better for Comet/long-poll stuff
# Enable Gzip
gzip on;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_min_length 1100;
gzip_buffers 4 8k;
gzip_proxied any;
gzip_types text/html text/plain text/xml application/xml application/xml+rss text/css text/javascript application/javascript application/json;
gzip_static on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6]\.";
gzip_vary on;
server {
# listen 80 default deferred; # for Linux
# listen 80 default accept_filter=httpready; # for FreeBSD
listen 80 default;
# e.g. "localhost" to accept all connections, or "www.example.com"
# to handle the requests for "example.com" (and www.example.com)
server_name _;
# Path for static files
root /srv/www/example.com/public_html/src/static;
expires 1M;
# Static assets
location ~* ^.+\.(manifest)$ {
expires -1D;
root /srv/www/example.com/public_html/src/;
access_log /srv/www/example.com/logs/static.logs;
}
location ~* ^.+\.(ico|ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|css|rss|atom|js|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ {
# Only set expires max IFF the file is a static file and exists
if (-f $request_filename) {
expires max;
root /srv/www/example.come/public_html/src/static;
access_log /srv/www/example.com/logs/static.logs;
}
}
}
}
我对nginx文件的疑问是: 1)我想用域名托管我的应用程序:www.example.com,我改变了nginx.conf文件的哪一行?
我的nginx.conf文件位于与app.py相同的文件夹中。
2)当我尝试通过键入/etc/init.d/nginx start启动nginx时,收到以下错误消息:
错误讯息:
Starting nginx: [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
[emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
[emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
[emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
[emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
[emerg]: still could not bind()
nginx.
我没有对在/ etc / nginx中找到的nginx.conf文件进行任何配置 我对这部分的问题是: 3)我如何修复错误? 4)如何自动启动nginx?
我尝试通过输入来运行我的Tornado应用程序 python app.py 我导航到http://xxx.xx.xxx.xxx:8888,我的应用程序正常运行。
但是,如果我关闭终端(终止程序),我的龙卷风应用程序将不再有效。
我的问题是: 5)我如何自动启动龙卷风应用程序? 6)我如何在域名上运行龙卷风?
感谢大家的耐心等待。
最诚挚的问候。
答案 0 :(得分:1)
1)更改server_name
。
2)您可能正在运行Apache。
3)停止服务(使用service httpd stop
之类的东西),然后启动nginx。
4)尝试以下命令:
$ chkconfig httpd off
$ chkconfig --add nginx
$ chkconfig nginx on
$ service nginx start
5)看看使用supervisor来运行python应用程序
6)查看nginx wiki有关reverse proxying的信息; nginx处理对域的请求,并将这些请求传递给龙卷风后端。
答案 1 :(得分:0)
关于错误信息:使用Ubuntu 11.10时同样的问题,似乎Opera占用了端口80,所以只需修改该值。