ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

ubuntu安装nginx教程及解决端口占用

2022-07-03 14:01:01  阅读:239  来源: 互联网

标签:pcre sysctl 0.0 端口 nginx conf ubuntu 安装


一、nginx在linux系统中的安装
1.使用远程连接工具连接linux操作系统
这里采用SSH远程连接

ssh root@ip

然后输入密码即可连接上远程服务器,如果连接不上的话,请确认服务器是否开启了远程连接权限,没有的话,需要开启才能进行远程连接。
2.安装nginx
使用apt-get命令安装

sudo apt-get install nginx

测试是否安装成功

sudo nginx -t

3.安装nginx相关依赖
第一步:安装pcre
主意安装的目录可以自选,这里安装的目录选在/user/local/src
#打开到指定目录

cd /user/local/src

#下载

wget https://netix.dl.sourceforge.net/project/pcre/pcre/8.40/pcre-8.40.tar.gz

#解压安装包

tar -zxvf pcre-8.40.tar.gz

#进入安装包目录

cd pcre-8.40

#编译安装

./configure
make && make install


#查看pcre版本

pcre-config --version

第二步:安装gcc

apt-get install gcc

#查看gcc的版本

gcc -v

第三步:安装zlib

apt-get install zlib1g-dev

第四步:安装openssl

apt-get install openssl libssl-dev

#查看openssl的版本

openssl version

二、启动nginx
1.找到nginx的可执行文件
一般是是在usr下的sbin中

cd /usr/sbin

2.启动nginx服务

./nginx

3.查看进程

ps -ef | grep nginx

 

以上部分转载自:https://blog.csdn.net/burgerh/article/details/121453229

而安装完nginx可能会出现nginx: [emerg] still could not bind()的报错如下图:

 

 

经过疯狂百度一般有两种解决方法:

1.端口真的被占用了

可以自己利用这个命令

netstat -ntlp|grep 80
[root@iZbp14dsc6whvwbrlnufnwZ sbin]# netstat -ntlp|grep 80
tcp 0 0 0.0.0.0:8086 0.0.0.0:* LISTEN 12009/java
tcp 0 0 127.0.0.1:8005 0.0.0.0:* LISTEN 12416/java
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 30903/nginx: master
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 12416/java
查看80的端口是否占用(nginx默认80端口)

如果我们需要去启动的话,需要先去杀死进程:kill -9 端口号

然后重新启动:./nginx

es:

# 快速停止nginx
./nginx -s stop
# 完整有序的停止nginx,这个命令会等待所有请求结束后再关闭nginx
./nginx -s quit
#执行重载命令 ./nginx -s reload

2.因为tcp6的原因(上图就是这个原因)

方法: 在etc/sysctl.conf 中追加红色字体的配置(注意需要以root身份打开这个sysctl.conf)

命令为: 

sudo vi etc/sysctl.conf

sysctl settings are defined through files in
# /usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/.
#
# Vendors settings live in /usr/lib/sysctl.d/.
# To override a whole file, create a new file with the same in
# /etc/sysctl.d/ and put new settings there. To override
# only specific settings, add a file with a lexically later
# name in /etc/sysctl.d/ and put new settings there.
#
# For more information, see sysctl.conf(5) and sysctl.d(5).
net.ipv4.tcp_timestamps = 0
net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.defalult.disable=1
保存后,reboot即可!

在做完上述准备后,输入命令

curl -i http://localhost

看nginx是否启动成功

 

 

标签:pcre,sysctl,0.0,端口,nginx,conf,ubuntu,安装
来源: https://www.cnblogs.com/jyj666/p/16439728.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有