CentOS 6.5 下 Nginx 的安装与配置

在 CentOS 6.5 上安装和配置 Nginx,可以通过编译安装或使用 YUM 包管理器进行,以下是两种方法的详细步骤。
通过编译安装 Nginx
1. 准备工作
需要先安装一些依赖包:
- yum install gccc++
- yum y install pcre*
- yum y install openssl
2. 下载 Nginx
从官网下载 Nginx 源码包(这里以 1.9.9 为例):

- cd /usr/local/
- wget http://nginx.org/download/nginx1.9.9.tar.gz
3. 解压及编译安装
解压下载的 Nginx 源码包:
- tar zxvf nginx1.9.9.tar.gz
进入解压后的目录:
- cd nginx1.9.9
设置安装目录为/usr/local/nginx
:
- ./configure prefix=/usr/local/nginx
- make
- make install
4. 启动 Nginx
进入安装目录并启动 Nginx:

- cd /usr/local/nginx/sbin
- ./nginx
重启 Nginx 的命令:
- ./nginx s reload
通过 YUM 安装 Nginx
1. 配置 YUM 源
创建源配置文件:
- cd /etc/yum.repos.d/
- vim nginx.repo
添加以下内容到配置文件中:
- [nginx]
- name=nginx repo
- baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
- gpgcheck=0
- enabled=1
保存并退出文件。
2. 安装 Nginx
直接通过 YUM 安装 Nginx:
- yum install nginx y
启动 Nginx 服务:
- /etc/init.d/nginx start
3. 检查安装状态
访问服务器的 IP 地址,如果看到 Nginx 欢迎页面,则表示安装成功。
nginx 配置文件说明
Nginx 的主要配置文件位于/etc/nginx/nginx.conf
,以下是一个简单的配置示例:
- user nginx;
- worker_processes 1;
- error_log /var/log/nginx/error.log warn;
- pid /var/run/nginx.pid;
- events {
- worker_connections 1024;
- }
- http {
- include /etc/nginx/mime.types;
- default_type application/octetstream;
- 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;
- sendfile on;
- keepalive_timeout 65;
- include /etc/nginx/conf.d/*.conf;
- }
这个配置文件定义了基本的 HTTP 服务器设置,包括日志格式、访问日志路径等,可以根据实际需求进行修改。
常见问题解答 (FAQs)
Q1: Nginx 启动后无法访问网站?
A1: 确保 Nginx 服务已经启动并监听正确的端口,可以使用命令netstat tuln | grep nginx
查看 Nginx 是否在监听预期的端口(默认是80),Nginx 没有正常启动,可以查看/var/log/nginx/error.log
中的日志信息,找出具体的错误原因,确保防火墙允许 HTTP 请求通过。
Q2: 如何配置 Nginx 作为反向代理?
A2: 配置 Nginx 作为反向代理,需要在nginx.conf
文件中添加相应的配置,将请求转发到另一个服务器的8080端口:
- server {
- listen 80;
- server_name yourdomain.com;
- location / {
- proxy_pass http://backend_server:8080;
- proxy_set_header Host $host;
- proxy_set_header XRealIP $remote_addr;
- proxy_set_header XForwardedFor $proxy_add_x_forwarded_for;
- proxy_set_header XForwardedProto $scheme;
- }
- }
这段配置会将来自客户端的所有请求转发到后端服务器backend_server
的 8080 端口,同时保留客户端的 IP 地址和协议信息。