热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

centos7编译安装nginx

一、安装依赖包yuminstallgccgcc-c++autoconfautomakezlibzlib-developensslopenssl-develpcre-dev

一、安装依赖包

yum install gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre-devel

二、下载

cd /usr/local/src/
wget http://nginx.org/download/nginx-1.14.2.tar.gz

三、编译

tar -zxvf nginx-1.14.2.tar.gz
cd nginx-1.14.2
./configure --prefix=/usr/local/nginx  --with-http_stub_status_module --with-http_ssl_module
make && make install

 四、将nginx设置为服务

centos 7 中采用 systemd 来管理系统,我们为 nginx 创建服务文件

vim /lib/systemd/system/nginx.service
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target

这里的 PIDFile 的配置要和前面的 配置保持一致。

设置自启动

 

[root@node2 logs]# systemctl enable nginx
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.

 

五、启动nginx

[root@node2 logs]# systemctl start nginx
Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.

提示报错,查看查看状态

[root@node2 logs]# systemctl status nginx
● nginx.service - The NGINX HTTP and reverse proxy server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since 二 2019-04-23 14:06:19 CST; 15s ago
  Process: 5873 ExecStart=/usr/local/nginx/sbin/nginx (code=exited, status=1/FAILURE)
  Process: 5869 ExecStartPre=/usr/local/nginx/sbin/nginx -t (code=exited, status=0/SUCCESS)

4月 23 14:06:16 node2.jinglong nginx[5873]: nginx: [emerg] bind() to 0.0.0.0:80 failed (9...e)
4月 23 14:06:17 node2.jinglong nginx[5873]: nginx: [emerg] bind() to 0.0.0.0:80 failed (9...e)
4月 23 14:06:17 node2.jinglong nginx[5873]: nginx: [emerg] bind() to 0.0.0.0:80 failed (9...e)
4月 23 14:06:18 node2.jinglong nginx[5873]: nginx: [emerg] bind() to 0.0.0.0:80 failed (9...e)
4月 23 14:06:18 node2.jinglong nginx[5873]: nginx: [emerg] bind() to 0.0.0.0:80 failed (9...e)
4月 23 14:06:19 node2.jinglong nginx[5873]: nginx: [emerg] still could not bind()
4月 23 14:06:19 node2.jinglong systemd[1]: nginx.service: control process exited, code=e...s=1
4月 23 14:06:19 node2.jinglong systemd[1]: Failed to start The NGINX HTTP and reverse pr...er.
4月 23 14:06:19 node2.jinglong systemd[1]: Unit nginx.service entered failed state.
4月 23 14:06:19 node2.jinglong systemd[1]: nginx.service failed.
Hint: Some lines were ellipsized, use -l to show in full.

提示80端口被占用,此时执行:

[root@node2 sbin]# killall -9 nginx
-bash: killall: 未找到命令

安装killall

yum install psmisc

再执行

killall -9 nginx

启动服务

[root@node2 sbin]# systemctl start nginx
[root@node2 sbin]# 

没有报错,查看状态

[root@node2 sbin]# systemctl status nginx
● nginx.service - The NGINX HTTP and reverse proxy server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
   Active: active (running) since 二 2019-04-23 14:24:54 CST; 17s ago
  Process: 6864 ExecStop=/bin/kill -s QUIT $MAINPID (code=exited, status=1/FAILURE)
  Process: 6896 ExecStart=/usr/local/nginx/sbin/nginx (code=exited, status=0/SUCCESS)
  Process: 6893 ExecStartPre=/usr/local/nginx/sbin/nginx -t (code=exited, status=0/SUCCESS)
 Main PID: 6897 (nginx)
   CGroup: /system.slice/nginx.service
           ├─6897 nginx: master process /usr/local/nginx/sbin/nginx
           └─6898 nginx: worker process

4月 23 14:24:54 node2.jinglong systemd[1]: Starting The NGINX HTTP and reverse proxy server...
4月 23 14:24:54 node2.jinglong nginx[6893]: nginx: the configuration file /usr/local/ngin...ok
4月 23 14:24:54 node2.jinglong nginx[6893]: nginx: configuration file /usr/local/nginx/co...ul
4月 23 14:24:54 node2.jinglong systemd[1]: Started The NGINX HTTP and reverse proxy server.
Hint: Some lines were ellipsized, use -l to show in full.

此时为running,启动成功,执行

[root@node2 sbin]# curl 127.0.0.1


<head>


head>

Welcome to nginx!

If you see this page, the nginx web server is successfully installed and working. Further configuration is required.

For online documentation and support please refer to "http://nginx.org/">nginx.org.
Commercial support is available at "http://nginx.com/">nginx.com.

Thank you for using nginx.

获取页面成功

 建立软连接

ln -s /usr/local/nginx/sbin/nginx /usr/sbin/

此时nginx可以在任意目录下执行命令


推荐阅读
  • 本文讨论了clone的fork与pthread_create创建线程的不同之处。进程是一个指令执行流及其执行环境,其执行环境是一个系统资源的集合。在调用系统调用fork创建一个进程时,子进程只是完全复制父进程的资源,这样得到的子进程独立于父进程,具有良好的并发性。但是二者之间的通讯需要通过专门的通讯机制,另外通过fork创建子进程系统开销很大。因此,在某些情况下,使用clone或pthread_create创建线程可能更加高效。 ... [详细]
  • 本文介绍了九度OnlineJudge中的1002题目“Grading”的解决方法。该题目要求设计一个公平的评分过程,将每个考题分配给3个独立的专家,如果他们的评分不一致,则需要请一位裁判做出最终决定。文章详细描述了评分规则,并给出了解决该问题的程序。 ... [详细]
  • 深入理解Kafka服务端请求队列中请求的处理
    本文深入分析了Kafka服务端请求队列中请求的处理过程,详细介绍了请求的封装和放入请求队列的过程,以及处理请求的线程池的创建和容量设置。通过场景分析、图示说明和源码分析,帮助读者更好地理解Kafka服务端的工作原理。 ... [详细]
  • 本文介绍了如何使用Express App提供静态文件,同时提到了一些不需要使用的文件,如package.json和/.ssh/known_hosts,并解释了为什么app.get('*')无法捕获所有请求以及为什么app.use(express.static(__dirname))可能会提供不需要的文件。 ... [详细]
  • 删除iPad或iPhone目录privatevarkeychainskeychain-2.db文件,重启iPad或iPhone。1.如何卸载机内自带软件? ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 3.223.28周学习总结中的贪心作业收获及困惑
    本文是对3.223.28周学习总结中的贪心作业进行总结,作者在解题过程中参考了他人的代码,但前提是要先理解题目并有解题思路。作者分享了自己在贪心作业中的收获,同时提到了一道让他困惑的题目,即input details部分引发的疑惑。 ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • 如何搭建Java开发环境并开发WinCE项目
    本文介绍了如何搭建Java开发环境并开发WinCE项目,包括搭建开发环境的步骤和获取SDK的几种方式。同时还解答了一些关于WinCE开发的常见问题。通过阅读本文,您将了解如何使用Java进行嵌入式开发,并能够顺利开发WinCE应用程序。 ... [详细]
  • linux下编译安装lnmp
    2019独角兽企业重金招聘Python工程师标准#######################安装依赖#####################安装必要的包:y ... [详细]
author-avatar
WO
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有