我一直在尝试使用 NGINX 在 ubuntu 上运行 flask 女服务员服务器。这是我当前的 NGINX 配置:服务器 { listen 80; server_name mydomain.com www.mydomain.com; client_max_body_...
我一直在尝试使用 NGINX 在 ubuntu 上运行 flask 女服务员服务器。
这是我当前的 NGINX 配置:
server {
listen 80;
server_name mydomain.com www.mydomain.com;
client_max_body_size 64M; # Adjust the size as needed
large_client_header_buffers 4 32k;
location / {
proxy_pass http://127.0.0.1:80;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/mydomain.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/mydomain.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
以下是我的女服务员求职申请:
def start(self):
# Start the database instance
self.db.start()
# Set the DEBUG flag to False in production mode
self.application.app.config["DEBUG"] = False
# Store a reference to the application instance
app_instance = self.application.app
# If we are in production mode
if self.prod:
# Set the host to "0.0.0.0" (all network interfaces) and the port to 8080
url = "127.0.0.1:80"
# Print the URL that the application is running on
print(f"Running PROD: http://{url}")
# Start the application with Waitress, a production-ready WSGI server
# The number of threads is set to 40
self.register()
waitress.serve(app_instance, listen=url, threads=10)
else:
# If we are in development mode
print("Running DEV")
# Run the application with its built-in development server
# The host is set to "0.0.0.0" (all network interfaces), the port is 8080,
# and debug mode is enabled
self.register()
self.application.run(host="127.0.0.1", port=80, debug=True,url_scheme='https', threaded=True)
我遇到的问题是,网页之前返回错误 400 标头大小问题,因此我指定了一个 large_client_header_buffers 对象,现在它似乎不断返回错误 500。
nginx 的最新日志如下:
2024/06/21 20:15:03 [alert] 2935#2935: *48088 socket() failed (24: Too many open files) while connecting to upstream, client: 127.0.0.1, server: mydomain.com, request: "GET / HTTP/1.0", upstream: "http://127.0.0.1:80/", host: "mydomain.com"
我已经将 flask 应用程序设置为在系统启动时在 crontab 上运行,并且 NGINX 也会在启动时启动。
任何帮助都将不胜感激!
我在 task_struct 中添加了一个新字段,还添加了 2 个非常基本的系统调用来设置和获取该字段。现在,当我尝试启动虚拟机时(我在 VirtualBox 上使用 Linux 4.15.18 Ubuntu),我得到以下信息
我在 task_struct 中添加了一个新字段,还添加了 2 个非常基本的系统调用来设置和获取该字段。现在,当我尝试启动虚拟机时(我在 VirtualBox 上使用 Linux 4.15.18 Ubuntu),我收到以下消息:madam:在配置文件中未找到数组或自动(重复多次)放弃等待根文件系统设备。警报!uuid=xxxx 不存在,进入 shell!我真的不明白我做了什么导致这种情况。
这些是我所做的所有更改:在include/linux/sched.h中:
struct task_struct{
volatile long state;
int new_field; //my addition
...
}
在include/linux/init_task.h中:
#define INIT_TASK(tsk) \
{
INIT_TASK_TI(tsk) \
.state = 0, \
.new_field = 0, \ //my addition
...
}
我还将我的系统调用添加到了 include/linux/syscalls.h 和 arch/x86/entry/syscalls/syscall_64.tbl,但我不认为这是导致问题的原因/