nginx安装步骤总结-故障排查-浏览原理

本文涉及的产品
.cn 域名,1个 12个月
简介:

yum安装nginx方法

wKioL1mX7WXBJUKhAABe1pOjkEk205.jpg


1 启动并检查安装结果

    安装完nginx后并不能直接对外提供服务需要先启动nginx服务才行具体操作如下

    1启动前检查配置文件语法

1
2
3
[root@web01 nginx-1.6.3] # /application/nginx/sbin/nginx -t
nginx: the configuration  file  /application/nginx-1 .6.3 //conf/nginx .conf syntax is ok
nginx: configuration  file  /application/nginx-1 .6.3 //conf/nginx .conf  test  is successful

提示在启动服务前检查语法非常重要可以防止因配置错误导致网站重启重新加载配置。

        再次启动nginx提示80端口已被占用

1
2
3
4
5
6
7
[root@web01 nginx-1.6.3] # /application/nginx/sbin/nginx
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already  in  use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already  in  use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already  in  use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already  in  use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already  in  use)
nginx: [emerg] still could not bind()

    kill掉nginx进程然后再启动nginx

1
[root@web01 nginx-1.6.3] # killall nginx

    2再次启动nginx服务

1
[root@web01 nginx-1.6.3] # /application/nginx/sbin/nginx

    3查看nginx服务对应的端口是否成功启动netstat -lutup或者lsof -i都可以

1
2
[root@web01 nginx-1.6.3] # netstat -lntup|grep 80
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      5161 /nginx
1
2
3
4
[root@web01 nginx-1.6.3] # lsof -i :80
COMMAND  PID USER   FD   TYPE DEVICE SIZE /OFF  NODE NAME
nginx   5161 root    6u  IPv4  19215      0t0  TCP *:http (LISTEN)
nginx   5162  www    6u  IPv4  19215      0t0  TCP *:http (LISTEN)

    4检查nginx启动的实际效果

        4.1在windows下通过浏览器检测的方法如下

    打开浏览器输入http://10.0.0.8(10.0.0.8为安装nginx服务器的ip地址)然后回车

如果看到如下内容就表示nginx已经启动了。

wKiom1mX8erBPI-fAADRN3EXcLg491.jpg

            4.2在linux下可使用wget命令检测。

1
2
3
4
5
6
7
8
[root@web01 nginx-1.6.3] # wget 127.0.0.1
--2017-08-19 16:11:17--  http: //127 .0.0.1/
Connecting to 127.0.0.1:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 612 [text /html ]
Saving to: index.html
100%[=================================>] 612         --.-K /s    in  0s     
2017-08-19 16:11:17 (54.7 MB /s ) - index.html saved [612 /612 ]

            4.3在linux下也可以使用curl命令检查如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
[root@web01 nginx-1.6.3] # curl 127.0.0.1
<!DOCTYPE html>
<html>
< head >
<title>Welcome to nginx!< /title >
<style>
     body {
         width: 35em;
         margin: 0 auto;
         font-family: Tahoma, Verdana, Arial, sans-serif;
     }
< /style >
< /head >
<body>
<h1>Welcome to nginx!< /h1 >
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.< /p >
<p>For online documentation and support please refer to
<a href= "http://nginx.org/" >nginx.org< /a >.<br/>
Commercial support is available at
<a href= "http://nginx.com/" >nginx.com< /a >.< /p >
<p><em>Thank you  for  using nginx.< /em >< /p >
< /body >
< /html >

        以上3中方法可以检测nginx安装及浏览是否正常。

        提示10.0.0.8为服务器的IP地址也可以通过netstat -lnt|grep 80、lsof -i:80 检查nginx服务端口默认为80来判断nginx是否已启动或通过ps -ef|grep nginx检查nginx服务进程来判断当然最稳妥的方法还是通过URL地址来检查在后面的监控服务中还会提到这个问题。


nginx启动的疑难杂症汇总

wKioL1mX_V6yvvvgAAETwAw_RlE454.jpg

        解答第二个可能原因:执行nginx自检报错:

1
2
3
[root@web01 html] # /application/nginx/sbin/nginx -t 
nginx: [emerg] unexpected  "}"  in  /application/nginx-1 .6.3 //conf/nginx .conf:27
nginx: configuration  file  /application/nginx-1 .6.3 //conf/nginx .conf  test  failed

        发现有问题:nginx.conf配置文件第27号的{是多余的,删除后再执行检查就ok了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
[root@web01 conf] # vim nginx.conf #增加后的虚拟主机配置文件
    
        worker_connections  1024;
    http {
        include       mime.types;
        default_type  application /octet-stream ;
        sendfile        on;
        keepalive_timeout  65;
       server {
           listen       80;
           server_name  ; #基于域名的虚拟主机
           location / {
               root   html /www ;     #域名www.etiantian.org对应自己的www站点
               index  index.html index.htm; #首页文件名字,和下面的bbs站点不在一个路径中
           }
           }
       server {
           listen       80;
           server_name  bbs.etiantian.org; #基于域名的虚拟主机
           location / {
               root   html /bbs ;     #域名bbs.etiantian.org对应自己的bbs站点
               index  index.html index.htm; #首页文件名字,和上面的www站点不在同一个路径
           }
           }
       }
   }

        配置文件中 }删除后再执行检查就ok了。

1
2
3
[root@web01 conf] # /application/nginx/sbin/nginx -t 
nginx: the configuration  file  /application/nginx-1 .6.3 //conf/nginx .conf syntax is ok
nginx: configuration  file  /application/nginx-1 .6.3 //conf/nginx .conf  test  is successful

      

wKiom1mX_WXjxcoOAADupZZLvyU691.jpg

wKiom1mX_Zri_MhwAADfn-lQVQ4500.jpg

        查看nginx版本ls /application/

1
2
[root@web01 nginx-1.6.3] # ls /application/
nginx  nginx-1.6.3

        查看nginx编译时候添加了什么组件/application/nginx/sbin/nginx -V

1
2
3
4
5
[root@web01 nginx-1.6.3] # /application/nginx/sbin/nginx -V
nginx version: nginx /1 .6.3
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC) 
TLS SNI support enabled
configure arguments: --user=www --group=www --with-http_ssl_module --with-http_sub_module --prefix= /application/nginx-1 .6.3/

wKioL1mX_mKDS2MTAADwQFlmqw4543.jpg

wKioL1mX_p6jKcK5AAD2DaWjoOk482.jpg

wKiom1mX_u7yh_IzAADkFW5cIv4537.jpg

wKiom1mX_0yyXT9CAACsLDdBbUQ135.jpg

wKioL1mX_0uDMfp-AACkLFme4EM129.jpg

wKioL1mX_0yyRLTJAADJU1ml8S8911.jpg

本文转自sandshell博客51CTO博客,原文链接http://blog.51cto.com/sandshell/1957640如需转载请自行联系原作者


sandshell

相关文章
|
3月前
|
负载均衡 网络协议 关系型数据库
一口把LVS、Nginx及HAProxy工作原理讲清楚了。(附图)
一口把LVS、Nginx及HAProxy工作原理讲清楚了。(附图)
|
29天前
|
负载均衡 应用服务中间件 Linux
nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件,很全
这篇博客文章详细介绍了Nginx的下载、安装、配置以及使用,包括正向代理、反向代理、负载均衡、动静分离等高级功能,并通过具体实例讲解了如何进行配置。
134 4
nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件,很全
|
1月前
|
tengine 关系型数据库 MySQL
Tengine、Nginx安装MySQL数据库命令教程
本指南详细介绍了在Linux系统上安装与配置MySQL数据库的步骤。首先通过下载并安装MySQL社区版本,接着启动MySQL服务,使用`systemctl start mysqld.service`命令。若启动失败,可尝试使用`sudo /etc/init.d/mysqld start`。利用`systemctl status mysqld.service`检查MySQL的服务状态,确保其处于运行中。通过日志文件获取初始密码,使用该密码登录数据库,并按要求更改初始密码以增强安全性。随后创建一个名为`tengine`的数据库,最后验证数据库创建是否成功以及完成整个设置流程。
|
27天前
|
应用服务中间件 Linux nginx
Mac os 安装 nginx 教程(success)
这篇文章是关于如何在Mac OS系统上使用Homebrew安装nginx及其依赖,并解决安装过程中可能出现的权限问题。
62 0
Mac os 安装 nginx 教程(success)
|
1月前
|
tengine 应用服务中间件 Linux
Tengine、Nginx安装PHP命令教程
要在阿里云Linux上安装PHP,请先更新YUM源并启用PHP 8.0仓库,然后安装PHP及相关扩展。通过`php -v`命令验证安装成功后,需修改Nginx配置文件以支持PHP,并重启服务。最后,创建`phpinfo.php`文件测试安装是否成功。对于CentOS系统,还需安装EPEL源和Remi仓库,其余步骤类似。完成上述操作后,可通过浏览器访问`http://IP地址/phpinfo.php`测试安装结果。
|
1月前
|
Ubuntu 搜索推荐 应用服务中间件
Nginx安装与使用
Nginx安装与使用
|
1月前
|
负载均衡 算法 应用服务中间件
Nginx安装及配置详解
Nginx安装及配置详解
|
1月前
|
应用服务中间件 程序员 开发工具
mac下安装nginx
mac下安装nginx
|
1月前
|
中间件 应用服务中间件 nginx
Nginx+uWSGI+Django原理
Nginx+uWSGI+Django原理
|
1月前
|
应用服务中间件 Linux nginx
CentOS7安装Nginx
CentOS7安装Nginx