我试图在Debian 11中使用Nginx1.18建立我自己的隐形VPN服务器。我遵循本指南,但许多指令不起作用。问题是,当我发出nginx -t
测试命令时,输出是:
- nginx: [emerg] unknown "ssl_preread_server_name" variable
如果问题仅与这个特定变量有关,并且为了查看是否存在其他错误,测试已经通过,但发现另一个变量错误,则我将此变量从$ssl_preread_server_name
改为$server_name
:
- nginx: [emerg] unknown "name" variable`
这是我在nginx.conf
文件os中的最后一个服务器代码块,我不希望它会发现更多的错误。我检查了Nginx变量的原始数据,变量$name
和$ssl_preread_server_name
是正式存在的。我所遵循的指南说,他们应该这样分配,而且在互联网上没有任何其他指南,所以我有点卡住了。
到目前为止,我对这两个变量都有疑问。它们位于map
块和最后一个server
块中。非常感谢你的帮助
这是我的全部代码:
user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;
events {
worker_connections 768;
# multi_accept on;
}
http {
##
# Basic Settings
##
sendfile on;
tcp_nopush on;
types_hash_max_size 2048;
# server_tokens off;
# server_names_hash_bucket_size 64;
# server_name_in_redirect off;
include /etc/nginx/mime.types;
default_type application/octet-stream;
##
# SSL Settings
##
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; # Dropping SSLv3, ref: POODLE
ssl_prefer_server_ciphers on;
ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt;
ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key;
##
# Servers
##
server {
# server_name 206.189.21.228;
listen 127.0.0.1:8000;
}
##
# map
##
map $ssl_preread_server_name $name {
default https;
206.189.21.228 vpn;
}
##
# Logging Settings
##
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
##
# Gzip Settings
##
gzip on;
##
# Virtual Host Configs
##
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
stream {
ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt;
ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key;
upstream https {
server unix:/etc/nginx/nginx_writing;
}
upstream vpn {
server unix:/etc/openvpn/openvpn_writing;
}
server {
listen unix:/etc/nginx/nginx_writing ssl;
# openvpn doesn't support unix-sockets
proxy_pass 127.0.0.1:1194;
}
server {
listen unix:/etc/nginx/nginx_writing2 ssl;
# could also use a unix-socket here
proxy_pass 127.0.0.1:8000;
}
server {
listen [::]:443 ipv6only=off;
proxy_protocol on;
proxy_pass $name;
}
}
发布于 2022-03-22 21:05:26
问题是您的nginx没有所需的ngx_stream_ssl_preread
模块。您需要找到包含此模块的nginx构建。
https://serverfault.com/questions/1096697
复制相似问题