服务器部署两个站点,在一个centos7服务器上面搭建多个站点

本文指导如何为两个网站创建并配置服务器目录、日志文件,并在httpd.conf中设置ServerName、DocumentRoot、ErrorLog和CustomLog,确保安全访问及日志记录。重启服务器后,多站点配置完成。

1,创建站点文件目录

mkdir -pv /var/www/网站1

mkdir -pv /var/www/网站2

2,创建站点日志存放目录

mkdir -pv /var/log/httpd/网站1

mkdir -pv /var/log/httpd/网站2

3,修改httpd.conf文件

vim /etc/httpd/conf/httpd.conf

在末尾添加

ServerName www.网站1.com

DocumentRoot /var/www/网站1

ErrorLog “/var/log/httpd/网站1/error_log”

CustomLog “/var/log/httpd/网站1/access_log” combined

Options -Indexes +Includes +FollowSymLinks +MultiViews

AllowOverride All

Require all granted

ServerName www.网站2.com

DocumentRoot /var/www/网站2

ErrorLog “/var/log/httpd/网站2/error_log”

CustomLog “/var/log/httpd/网站2/access_log” combined

Options -Indexes +Includes +FollowSymLinks +MultiViews

AllowOverride All

Require all granted

保存退出后重启服务器即可

<think>好的,我现在需要帮助用户解答如何在Windows或Linux上搭建Nginx服务器的问题。用户之前询问了关于Windows磁盘链接的问题,现在转向了Nginx服务器搭建,可能是在进行某种项目部署,比如网站或者流媒体服务。根据提供的引用内容,用户可能已经查阅了一些相关资料,但需要更清晰的步骤指导。 首先,我需要分析用户的需求。用户明确提到想要在Windows或Linux上搭建Nginx服务器,因此需要分别给出两个平台的安装和配置方法。用户提供的引用中有多个关于Linux和Windows安装Nginx的步骤,包括RTMP模块的配置,这可能意味着用户可能有流媒体服务的需求,比如视频直播或点播。不过用户的问题中没有明确说明是否需要RTMP模块,所以我需要确认是否要包含这部分内容。但根据用户当前的提问,主要关注点是搭建Nginx服务器的基础步骤,可能暂时不需要深入模块配置,但可以考虑提及扩展模块的方法作为进阶内容。 接下来,我需要整理引用中的信息。引用1、3、5主要涉及Linux下Nginx的安装,包括依赖库的下载和编译安装步骤,而引用2和4提到了Windows下的Nginx安装以及RTMP模块的配置。引用中还提到环境变量的设置、配置文件的编辑以及常用命令,这些都是搭建过程中需要注意的关键点。 在构建回答时,应该分平台详细说明步骤,确保用户能够按部就班地操作。对于Linux部分,可能需要包括使用包管理器安装和源码编译安装两种方式,因为不同的发行版可能有不同的偏好。例如,Ubuntu可以使用apt,而CentOS使用yum。源码编译安装虽然复杂,但允许更多的自定义选项,比如添加第三方模块如RTMP。对于Windows部分,用户可能更倾向于使用预编译的二进制文件,因为编译环境配置较为复杂。 同时,需要确保步骤的准确性。比如在Linux下通过包管理器安装后,如何启动服务,检查状态;在Windows下如何解压并运行Nginx。此外,配置文件的路径和基本测试方法也需要明确,比如创建测试页面,使用curl或浏览器访问。安全组和防火墙的设置提醒也是必要的,避免用户遇到无法访问的问题。 用户可能遇到的常见问题包括权限不足、端口冲突、依赖缺失等,在步骤中加入相关的提示可以帮助用户避免这些问题。例如,在Linux编译安装时,确保安装了必要的开发工具和库;在Windows中,检查80端口是否被其他程序占用。 另外,用户之前的提问涉及到符号链接和快捷方式,可能与服务器文件管理有关,但目前的问题主要集中在搭建Nginx,因此暂时不需要涉及这部分内容,除非在配置路径时有必要提及符号链接的使用,比如将网站根目录链接到其他位置,但可能属于进阶配置,可以在注意事项或进阶应用中简要说明。 最后,需要验证提供的命令和步骤是否正确。例如,在Linux中使用apt安装Nginx的命令是否正确,是否需要先更新源;Windows中下载的Nginx版本链接是否有效,是否需要用户去官网获取最新版本。确保所有命令和路径都是当前可用的,避免用户执行时出现错误。 总结来说,回答需要结构清晰,分平台说明安装步骤,涵盖基本安装、配置、测试以及常见问题处理。同时,根据用户提供的引用内容,适当提及RTMP模块的配置作为可选扩展,满足用户可能的进阶需求。确保语言简洁,步骤明确,便于用户跟随操作。</think>### Windows与Linux平台Nginx服务器搭建指南 #### 一、Linux平台搭建(Ubuntu/CentOS为例) --- ##### 方法1:包管理器安装(推荐新手) ```bash # Ubuntu/Debian sudo apt update sudo apt install nginx -y sudo systemctl start nginx sudo systemctl enable nginx # CentOS/RHEL sudo yum install epel-release -y sudo yum install nginx -y sudo systemctl start nginx sudo systemctl enable nginx ``` ##### 方法2:源码编译安装(支持自定义模块) 1. **安装依赖** ```bash sudo apt install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev -y # Ubuntu # 或 sudo yum install gcc pcre-devel zlib-devel openssl-devel -y # CentOS ``` 2. **下载并编译** ```bash wget https://nginx.org/download/nginx-1.25.3.tar.gz tar -zxvf nginx-1.25.3.tar.gz cd nginx-1.25.3 # 基础配置 ./configure --prefix=/usr/local/nginx \ --with-http_ssl_module \ --with-http_stub_status_module # 添加RTMP模块(可选) git clone https://github.com/arut/nginx-rtmp-module.git ./configure --add-module=../nginx-rtmp-module make && sudo make install ``` 3. **配置环境变量** ```bash echo 'export PATH=/usr/local/nginx/sbin:$PATH' >> ~/.bashrc source ~/.bashrc ``` 4. **服务管理** ```bash sudo /usr/local/nginx/sbin/nginx # 启动 nginx -s reload # 重载配置 nginx -s stop # 停止服务 ``` --- #### 二、Windows平台搭建 --- 1. **下载二进制包** - 访问[nginx官方下载页](https://nginx.org/en/download.html) - 选择`nginx/Windows-xxx`版本 2. **快速部署步骤** ```cmd :: 解压到D:\nginx cd D:\nginx start nginx :: 启动服务 taskkill /IM nginx.exe /F :: 强制停止 ``` 3. **配置文件路径** - 主配置:`conf\nginx.conf` - 日志文件:`logs\access.log` 和 `logs\error.log` 4. **创建系统服务(可选)** ```powershell sc.exe create Nginx binPath= "D:\nginx\nginx.exe" start= auto ``` --- #### 三、基础配置验证 --- 1. **Linux测试** ```bash curl -I 127.0.0.1 # 应返回HTTP/1.1 200 OK ``` 2. **Windows测试** - 浏览器访问`http://localhost`显示欢迎页 3. **自定义站点配置** ```nginx # 在/etc/nginx/conf.d/或conf/conf.d/创建test.conf server { listen 8080; server_name localhost; location / { root html/test; index index.html; } } ``` 创建测试页面: ```bash mkdir -p /usr/local/nginx/html/test echo "<h1>Nginx Works!</h1>" > index.html ``` --- #### 四、进阶应用扩展 --- ##### RTMP流媒体服务配置(需编译时添加模块) ```nginx # 在nginx.conf的events区块后添加 rtmp { server { listen 1935; chunk_size 4096; application live { live on; record off; } } } ``` 推流测试命令: ```bash ffmpeg -re -i input.mp4 -c copy -f flv rtmp://服务器IP/live/streamkey ``` --- #### 五、注意事项 1. **防火墙设置** - Linux:`sudo ufw allow 'Nginx Full'` - Windows:放行80/443端口入站规则 2. **路径差异** - Linux默认根目录:`/usr/share/nginx/html` - Windows默认根目录:`html/` 3. **性能优化** - Linux建议调整`worker_processes`为CPU核心数 - Windows版建议用于开发测试,生产环境优先选择Linux部署[^4] --- #### 相关问题 1. 如何为Nginx配置SSL证书实现HTTPS加密? 2. Nginx负载均衡的常见算法与配置方法? 3. 如何通过Docker快速部署Nginx服务器
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值