centos Ubuntu 安装Nginx

本文介绍了如何在CentOS和Ubuntu系统中安装Nginx,包括安装编译工具、PCRE库,详细步骤解析Nginx的安装过程,配置文件编辑,启动Nginx,设置开机自动启动以及常用命令。

服务器centos安装 

菜鸟教程安装ningxhttp://www.runoob.com/linux/nginx-install-setup.html


Nginx 安装

系统平台:CentOS release 6.6 (Final) 64位。

一、安装编译工具及库文件

yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

二、首先要安装 PCRE

PCRE 作用是让 Nginx 支持 Rewrite 功能。

安装位置自己设置好 下面的安装nginx 4 需要注意自己的文件路径

1、下载 PCRE 安装包,下载地址: http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

[root@bogon src]# wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

2、解压安装包:

[root@bogon src]# tar zxvf pcre-8.35.tar.gz

3、进入安装包目录

[root@bogon src]# cd pcre-8.35

4、编译安装 

[root@bogon pcre-8.35]# ./configure
[root@bogon pcre-8.35]# make && make install

5、查看pcre版本

[root@bogon pcre-8.35]# pcre-config --version

安装 Nginx

1、下载 Nginx,下载地址:http://nginx.org/download/nginx-1.6.2.tar.gz

[root@bogon src]# wget http://nginx.org/download/nginx-1.6.2.tar.gz

2、解压安装包

[root@bogon src]# tar zxvf nginx-1.6.2.tar.gz

3、进入安装包目录

[root@bogon src]# cd nginx-1.6.2

4、编译安装

[root@bogon nginx-1.6.2]# ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35
[root@bogon nginx-1.6.2]# make
[root@bogon nginx-1.6.2]# make install

5、查看nginx版本

[root@bogon nginx-1.6.2]# /usr/local/webserver/nginx/sbin/nginx -v

到此,nginx安装完成。


Nginx 配置

创建 Nginx 运行使用的用户 www:

[root@bogon conf]# /usr/sbin/groupadd www 
[root@bogon conf]# /usr/sbin/useradd -g www www

配置nginx.conf ,将/usr/local/webserver/nginx/conf/nginx.conf替换为以下内容

 

[root@bogon conf]#  cat /usr/local/webserver/nginx/conf/nginx.conf

user www www;
worker_processes 2; #设置值和CPU核心数一致
error_log /usr/local/webserver/nginx/logs/nginx_error.log crit; #日志位置和日志级别
pid /usr/local/webserver/nginx/nginx.pid;
#Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 65535;
events
{
  use epoll;
  worker_connections 65535;
}
http
{
  include mime.types;
  default_type application/octet-stream;
  log_format main  '$remote_addr - $remote_user [$time_local] "$request" '
               '$status $body_bytes_sent "$http_referer" '
               '"$http_user_agent" $http_x_forwarded_for';
  
#charset gb2312;
     
  server_names_hash_bucket_size 128;
  client_header_buffer_size 32k;
  large_client_header_buffers 4 32k;
  client_max_body_size 8m;
     
  sendfile on;
  tcp_nopush on;
  keepalive_timeout 60;
  tcp_nodelay on;
  fastcgi_connect_timeout 300;
  fastcgi_send_timeout 300;
  fastcgi_read_timeout 300;
  fastcgi_buffer_size 64k;
  fastcgi_buffers 4 64k;
  fastcgi_busy_buffers_size 128k;
  fastcgi_temp_file_write_size 128k;
  gzip on; 
  gzip_min_length 1k;
  gzip_buffers 4 16k;
  gzip_http_version 1.0;
  gzip_comp_level 2;
  gzip_types text/plain application/x-javascript text/css application/xml;
  gzip_vary on;
 
  #limit_zone crawler $binary_remote_addr 10m;
 #下面是server虚拟主机的配置
 server
  {
    listen 80;#监听端口
    server_name localhost;#域名
    index index.html index.htm index.php;
    root /usr/local/webserver/nginx/html;#站点目录
      location ~ .*\.(php|php5)?$
    {
      #fastcgi_pass unix:/tmp/php-cgi.sock;
      fastcgi_pass 127.0.0.1:9000;
      fastcgi_index index.php;
      include fastcgi.conf;
    }
    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico)$
    {
      expires 30d;
  # access_log off;
    }
    location ~ .*\.(js|css)?$
    {
      expires 15d;
   # access_log off;
    }
    access_log off;
  }

}

检查配置文件nginx.conf的正确性命令:

[root@bogon conf]# /usr/local/webserver/nginx/sbin/nginx -t


启动 Nginx

Nginx 启动命令如下:

[root@bogon conf]# /usr/local/webserver/nginx/sbin/nginx


访问站点

从浏览器访问我们配置的站点ip:


Nginx 其他命令

以下包含了 Nginx 常用的几个命令:

/usr/local/webserver/nginx/sbin/nginx -s reload            # 重新载入配置文件
/usr/local/webserver/nginx/sbin/nginx -s reopen            # 重启 Nginx
/usr/local/webserver/nginx/sbin/nginx -s stop              # 停止 Nginx
使用新的自定义配置文件启动 
/usr/local/webserver/nginx/sbin/nginx -c /usr/local/webserver/nginx/conf/mynginx.conf 

 

================================================================================================================================================================================================================================================================================================

sudo apt-get install nginx

安装好的文件位置:

/usr/sbin/nginx:主程序

/etc/nginx:存放配置文件

/usr/share/nginx:存放静态文件

/var/log/nginx:存放日志

其实从上面的根目录文件夹可以知道,Linux系统的配置文件一般放在/etc,日志一般放在/var/log,运行的程序一般放在/usr/sbin或者/usr/bin。

当然,如果要更清楚Nginx的配置项放在什么地方,可以打开/etc/nginx/nginx.conf

我猜测,Nginx如果指定默认加载/etc/nginx/nginx.conf的配置文件。如果要查看加载的是哪个配置文件,可以用这个命令sudo nginx -t或者ps -ef | grep nginx

然后通过这种方式安装的,会自动创建服务,会自动在/etc/init.d/nginx新建服务脚本,然后就可以使用sudo service nginx {start|stop|restart|reload|force-reload|status|configtest|rotate|upgrade}的命令启动。

设置开机自动启动

echo "/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf" >> /etc/rc.local

 

<think>好的,我需要帮助用户在CentOS7上安装Nginx1.26.2并配置HTTPS。首先,回顾用户之前的对话,用户之前问的是如何在Linux系统安装Nginx并配置HTTPS,我给出了基于Ubuntu的步骤,但现在用户明确要在CentOS7上操作,因此需要调整依赖安装部分,因为CentOS使用yum而非apt。根据用户提供的站内引用,引用[1]提到安装依赖的命令是yum安装gcc、pcre、zlib、openssl等,这CentOS的环境相符。引用[2][4]提到解压源码到/usr/local/src,并运行./configure指定安装路径。引用[5]还涉及了fastdfs模块的安装,但用户当前问题需要这个,可以忽略。引用[3]提到使用systemctl管理服务,但Nginx源码安装后默认没有systemd服务文件,可能需要手动创建,或者用户需要知道如何通过二进制文件启动。用户现在的问题是如何在CentOS7上安装Nginx1.26.2并正确配置HTTPS。我需要整合之前的回答新的引用内容,确保步骤适用于CentOS,特别是依赖安装部分使用yum,而是apt。同时,配置SSL证书的部分需要保持,可能包括自签名证书或Let's Encrypt的指引。需要注意,之前的回答中提到了使用makeinstall安装到/usr/local/nginx,而CentOS的引用中安装路径可能同,需要统一。另外,CentOS的防火墙管理是firewall-cmd,而是ufw,所以步骤中的防火墙配置需要调整。 接下来,我需要分步骤编写:安装依赖、下载解压源码、编译安装、生成证书、配置HTTPS、启动服务防火墙设置。同时,要确保引用正确的站内引用,比如安装依赖参考引用[1],编译步骤参考引用[2][4]。还要检查是否需要添加systemd服务,如引用[3]提到的,但用户可能希望使用源码安装后的启动方式,即直接运行nginx二进制,或者需要创建服务文件。如果用户之前的问题中没有涉及,可能需要省略,或者作为可选步骤。最后,生成相关问题,参考之前的模式,例如如何配置HTTP跳转HTTPS,如何申请Let'sEncrypt证书,SSL优化方法等。</think>### 在CentOS 7上安装Nginx 1.26.2并配置HTTPS的完整指南 --- #### 一、安装依赖环境 ```bash sudo yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel ``` 安装编译所需的开发工具库文件(CentOS使用yum包管理器)[^1] --- #### 二、下载并解压源码 ```bash cd /usr/local/src sudo wget http://nginx.org/download/nginx-1.26.2.tar.gz sudo tar -zxvf nginx-1.26.2.tar.gz cd nginx-1.26.2 ``` 源码包建议存放在`/usr/local/src`目录[^4] --- #### 三、编译安装(含SSL模块) ```bash ./configure --prefix=/usr/local/nginx \ --with-http_ssl_module \ --with-http_stub_status_module \ --with-stream sudo make && make install ``` 通过`--with-http_ssl_module`参数启用SSL支持[^2] --- #### 四、生成SSL证书(以自签名为例) ```bash sudo mkdir -p /usr/local/nginx/conf/ssl sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \ -keyout /usr/local/nginx/conf/ssl/server.key \ -out /usr/local/nginx/conf/ssl/server.crt ``` 生成证书时需填写域名等信息,生产环境建议使用Let's Encrypt证书 --- #### 五、配置HTTPS服务 修改`/usr/local/nginx/conf/nginx.conf`,添加: ```nginx server { listen 443 ssl; server_name yourdomain.com; ssl_certificate /usr/local/nginx/conf/ssl/server.crt; ssl_certificate_key /usr/local/nginx/conf/ssl/server.key; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!MD5; location / { root html; index index.html index.htm; } } ``` --- #### 六、启动与验证 ```bash # 测试配置文件 sudo /usr/local/nginx/sbin/nginx -t # 启动服务 sudo /usr/local/nginx/sbin/nginx # 查看端口监听 sudo netstat -tunlp | grep nginx ``` --- #### 七、防火墙配置 ```bash sudo firewall-cmd --permanent --add-service=https sudo firewall-cmd --reload ``` CentOS 7默认使用firewalld管理防火墙[^3] --- #### 八、创建系统服务(可选) 新建`/usr/lib/systemd/system/nginx.service`: ```ini [Unit] Description=nginx service After=network.target [Service] Type=forking ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s quit PrivateTmp=true [Install] WantedBy=multi-user.target ``` 然后执行: ```bash sudo systemctl daemon-reload sudo systemctl enable nginx ``` ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值