nginx - 如何在nginx中更改服务器主机名
问题描述
我正在尝试使用不同的主机名在端口 80 中启动 nginx 服务器。
目前80端口是Apache绑定的,其实我服务器还有其他站点,就是CentOS 7。
我需要使用相同的端口但其他虚拟主机启动 ngix,这不是由 Apache 管理的。
我尝试修改 fila: /etc/nginx/conf.d/default.conf ,其中包含以下几行:
listen hostname:80;
server_name hostname;
但它没有用。甚至,我将端口更改为 8080 进行测试,但是当我运行“systemctl status nginx.service”时,它总是响应:
nginx.service - nginx - high performance web server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Mon 2019-03-11 20:32:52 -03; 7min ago
Docs: http://nginx.org/en/docs/
Process: 22790 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=1/FAILURE)
Mar 11 20:32:49 vps.desytec.com nginx[22790]: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
Mar 11 20:32:50 vps.desytec.com nginx[22790]: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
Mar 11 20:32:50 vps.desytec.com nginx[22790]: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
Mar 11 20:32:51 vps.desytec.com nginx[22790]: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
Mar 11 20:32:51 vps.desytec.com nginx[22790]: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
Mar 11 20:32:52 vps.desytec.com nginx[22790]: nginx: [emerg] still could not bind()
Mar 11 20:32:52 vps.desytec.com systemd[1]: nginx.service: control process exited, code=exited status=1
Mar 11 20:32:52 vps.desytec.com systemd[1]: Failed to start nginx - high performance web server.
Mar 11 20:32:52 vps.desytec.com systemd[1]: Unit nginx.service entered failed state.
Mar 11 20:32:52 vps.desytec.com systemd[1]: nginx.service failed.
最后,这是 /etc/nginx/nginx.conf 文件:
user nginx;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
worker_processes 1;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
server_names_hash_bucket_size 64;
client_max_body_size 64m;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main buffer=16k;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
keepalive_requests 100;
#gzip on;
include /etc/nginx/conf.d/*;
}
请问有什么帮助吗?
谢谢詹姆
解决方案
推荐阅读
- c# - ASP.NET Core 3.1 中的图像提供程序
- android - ViewModel 中未触发 Activity 中的生命周期
- javascript - 如何从文件中读取数据而不舍入精度超过 16 位的数字?
- java - 如果目标相同,则跳过文件复制
- r - R编写一个函数以避免for循环
- node.js - 使用 nodejs 从 Dbpedia 搜索关键字
- swift - 自定义 UIButton 导致 Storyboard Agent Crash Swift
- azure - Azure Key Vault 可以与 Functions 一起使用来存储队列触发器的连接字符串吗?
- sql - SQL 查找以前的记录信息
- java - libGDX 中对象的速度