Linux下安装配置nginx详解

发布时间 - 2026-01-10 22:40:51    点击率:

一、Linux下安装配置nginx

第一次安装nginx,中间出现的问题一步步解决。

用到的工具secureCRT,连接并登录服务器。

1.1 rz命令,会弹出会话框,选择要上传的nginx压缩包。

#rz 

1.2 解压

[root@vw010001135067 ~]# cd /usr/local/
[root@vw010001135067 local]# tar -zvxf nginx-1.10.2.tar.gz

1.3 进入nginx文件夹,执行./configure命令

[root@vw010001135067 local]# cd nginx-1.10.2
[root@vw010001135067 nginx-1.10.2]# ./configure

报错如下:

checking for OS
 + Linux 2.6.32-431.el6.x86_64 x86_64
checking for C compiler ... not found

./configure: error: C compiler cc is not found

出现这个错误。那么就是gcc 包没有安装。

1.3.1 安装gcc

查看gcc

[root@vw010001135067 nginx-1.10.2]# whereis gcc
gcc:

安装gcc

[root@vw010001135067 nginx-1.10.2]# yum -y install gcc

安装成功后再次查看

[root@vw010001135067 nginx-1.10.2]# whereis gcc
gcc: /usr/bin/gcc /usr/lib/gcc /usr/libexec/gcc /usr/share/man/man1/gcc.1.gz

gcc安装好了。

1.3.2 继续执行./configure

[root@vw010001135067 nginx-1.10.2]# ./configure
checking for OS
 + Linux 2.6.32-431.el6.x86_64 x86_64
checking for C compiler ... found
......
checking for PCRE library ... not found
checking for PCRE library in /usr/local/ ... not found
checking for PCRE library in /usr/include/pcre/ ... not found
checking for PCRE library in /usr/pkg/ ... not found
checking for PCRE library in /opt/local/ ... not found

./configure: error: the HTTP rewrite module requires the PCRE library.
You can either disable the module by using --without-http_rewrite_module
option, or install the PCRE library into the system, or build the PCRE library
statically from the source with nginx by using --with-pcre=<path> option.

出现如上错误。安装pcre-devel

[root@vw010001135067 nginx-1.10.2]# yum install pcre-devel

1.3.3 再次执行./configure

error: the HTTP gzip module requires the zlib library.
You can either disable the module by using --without-http_gzip_module
option, or install the zlib library into the system, or build the zlib library
statically from the source with nginx by using --with-zlib=<path> option.

如果有这个错误 那么执行

yum install zlib-devel

1.3.4 执行./configure后没有报错

[root@vw010001135067 nginx-1.10.2]# ./configure
checking for OS
 + Linux 2.6.32-431.el6.x86_64 x86_64
checking for C compiler ... found
 + using GNU C compiler
 + gcc version: 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC) 
.......
Configuration summary
 + using system PCRE library
 + OpenSSL library is not used
 + md5: using system crypto library
 + sha1: using system crypto library
 + using system zlib library

 nginx path prefix: "/usr/local/nginx"
 nginx binary file: "/usr/local/nginx/sbin/nginx"
 nginx modules path: "/usr/local/nginx/modules"
 nginx configuration prefix: "/usr/local/nginx/conf"
 nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
 nginx pid file: "/usr/local/nginx/logs/nginx.pid"
 nginx error log file: "/usr/local/nginx/logs/error.log"
 nginx http access log file: "/usr/local/nginx/logs/access.log"
 nginx http client request body temporary files: "client_body_temp"
 nginx http proxy temporary files: "proxy_temp"
 nginx http fastcgi temporary files: "fastcgi_temp"
 nginx http uwsgi temporary files: "uwsgi_temp"
 nginx http scgi temporary files: "scgi_temp"

1.4 如果你想使用openssl 功能,sha1 功能。 那么安装openssl ,sha1 吧

[root@vw010001135067 nginx-1.10.2]# yum install openssl openssl-devel 
[root@vw010001135067 nginx-1.10.2]# install perl-Digest-SHA1.x86_64

1.4.1 开启ssl 模块 执行./configure –with-http_ssl_module

[root@vw010001135067 nginx-1.10.2]# ./configure --with-http_ssl_module

1.4.2 启用“server+status”页,执行./configure –with-http_stub_status_module

[root@vw010001135067 nginx-1.10.2]# ./configure --with-http_stub_status_module

上面两个命令同时启动可以

复制代码 代码如下:
[root@vw010001135067 nginx-1.10.2]# ./configure --with-http_stub_status_module --with-http_ssl_module

1.5 上面configure就通过了

执行make 命令,执行make install 命令

[root@vw010001135067 nginx-1.10.2]# make
[root@vw010001135067 nginx-1.10.2]# make install

至此,nginx 执行成功了

1.6 配置环境变量

在/etc/profile 中加入配置

打开配置文件

[root@vw010001135067 nginx-1.10.2]# vi /etc/profile

在配置文件中加入

#nginx configure
export NGINX_HOME=/usr/local/nginx-1.10.2
export PATH=$PATH:$NGINX_HOME/sbin

我开始像上面填写,结果nginx -v的时候查找不到。注意到上面我的nginx_home配置的地址不对。先找到nginx的安装地址

[root@vw010001135067 nginx-1.10.2]# whereis nginx
nginx: /usr/local/nginx

还真是地址写错了,把上面的改成

#nginx configure
export NGINX_HOME=/usr/local/nginx
export PATH=$PATH:$NGINX_HOME/sbin

编译完保存退出并执行

[root@vw010001135067 nginx-1.10.2]# source /etc/profile

使配置生效。

1.7 查看nginx版本

[root@vw010001135067 nginx]# nginx -v
nginx version: nginx/1.10.2

整个过程成功了!

二、修改nginx.conf

2.1 启动nginx

我的nginx服务在http://10.1.135.67/,配置成功后,现在启动nginx

[root@vw010001135067 nginx]# cd /usr/local/nginx
[root@vw010001135067 nginx]# nginx -c conf/nginx.conf

启动成功,在浏览器打开http://10.1.135.67/,默认端口号80.

如上图,nginx已经正常工作了。

2.2 配置tomcat服务

现在我的tomcat服务在10.1.29.15,需要通过nginx转发。那么打开nginx.conf,修改配置文件。如下,添加:

#user nobody;
worker_processes 1;

#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;

#pid  logs/nginx.pid;


events {
 worker_connections 1024;#最大连接数,默认为512
 accept_mutex on; #设置网路连接序列化,防止惊群现象发生,默认为on
 multi_accept on; #设置一个进程是否同时接受多个网络连接,默认为off
 #use epoll;  #事件驱动模型,select|poll|kqueue|epoll|resig|/dev/poll|eventport 
}


http {
 #文件扩展名与文件类型映射表
 include  mime.types;

 #默认文件类型,默认为text/plain 
 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"'; 

 #combined为日志格式的默认值
 access_log logs/access.log main;

 #允许sendfile方式传输文件,默认为off,可以在http块,server块,location块
 sendfile  on;
 sendfile_max_chunk 100k; #每个进程每次调用传输数量不能大于设定的值,默认为0,即不设上限。

 #tcp_nopush  on;

 #连接超时时间,默认为75s,可以在http,server,location块。
 keepalive_timeout 65;

 #gzip on;

 upstream upload {
  server 10.1.29.15:8080;
 }

 error_page 404 https://www.baidu.com; #错误页

 server {
  keepalive_requests 120; #单连接请求上限次数。
  listen  80; #监听端口
  server_name localhost; #监听地址 

  #charset koi8-r;

  #access_log logs/host.access.log main;

  location ~ ^.*?/upload/[^/]*?$ {
   proxy_connect_timeout 15;
   proxy_send_timeout 15;
   proxy_read_timeout 15;
   proxy_set_header Host $host;
   proxy_set_header X-Real-IP $remote_addr;
   proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
   proxy_set_header Connection "";
   proxy_pass http://upload; #请求转向upload 定义的服务器列表
   client_max_body_size 1024m;
} 
 }
}

配置好后,保存配置文件,并且重启nginx

[root@vw010001135067 nginx]# nginx -s reload

在浏览器调用upload项目是否成功

如图能正确访问项目,配置成功!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# linux  # nginx  # 安装配置  # 配置  # linux下nginx配置  # windows系统安装配置nginx环境  # Nginx安装配置详解  # win10安装配置nginx的过程  # Linux服务器下安装配置Nginx的教程  # Windows Server 2016 Nginx 安装配置详细图文教程  # LNMP编译安装之nginx安装配置方法图文教程  # Windows下Nginx安装配置教程  # Nginx安装配置的实现示例  # 默认为  # 配置文件  # 报错  # 好了  # 多个  # 你想  # 错了  # 注意到  # 弹出  # 自定义  # 如图  # 重启  # 压缩包  # 好后  # 大家多多  # 不设  # 默认值  # 没有安装  # 连接数  # 端口号 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 西安专业网站制作公司有哪些,陕西省建行官方网站?  nginx修改上传文件大小限制的方法  Win11怎么开启自动HDR画质_Windows11显示设置HDR选项  Laravel如何创建自定义Artisan命令?(代码示例)  微信小程序制作网站有哪些,微信小程序需要做网站吗?  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  php做exe能调用系统命令吗_执行cmd指令实现方式【详解】  Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道  如何用PHP快速搭建高效网站?分步指南  Laravel怎么使用Session存储数据_Laravel会话管理与自定义驱动配置【详解】  如何快速选择适合个人网站的云服务器配置?  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  Laravel项目如何进行性能优化_Laravel应用性能分析与优化技巧大全  Android Socket接口实现即时通讯实例代码  大连 网站制作,大连天途有线官网?  Laravel如何创建自定义Facades?(详细步骤)  如何快速登录WAP自助建站平台?  Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层  活动邀请函制作网站有哪些,活动邀请函文案?  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  java ZXing生成二维码及条码实例分享  手机网站制作与建设方案,手机网站如何建设?  如何在IIS管理器中快速创建并配置网站?  Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  php 三元运算符实例详细介绍  零服务器AI建站解决方案:快速部署与云端平台低成本实践  Laravel怎么导出Excel文件_Laravel Excel插件使用教程  Laravel如何从数据库删除数据_Laravel destroy和delete方法区别  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  JS经典正则表达式笔试题汇总  Laravel怎么生成URL_Laravel路由命名与URL生成函数详解  Python制作简易注册登录系统  Laravel怎么集成Vue.js_Laravel Mix配置Vue开发环境  Java解压缩zip - 解压缩多个文件或文件夹实例  如何在IIS中新建站点并配置端口与IP地址?  SQL查询语句优化的实用方法总结  Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】  如何在新浪SAE免费搭建个人博客?  如何在阿里云服务器自主搭建网站?  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置  linux写shell需要注意的问题(必看)  谷歌Google入口永久地址_Google搜索引擎官网首页永久入口  怎样使用JSON进行数据交换_它有什么限制  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  Laravel Session怎么存储_Laravel Session驱动配置详解  Python数据仓库与ETL构建实战_Airflow调度流程详解  米侠浏览器网页图片不显示怎么办 米侠图片加载修复  Python面向对象测试方法_mock解析【教程】  Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载