nginx启动命令和默认配置文件的使用

 更新时间:2025年06月16日 14:07:51   作者:Gen邓艮艮  
这篇文章主要介绍了nginx启动命令和默认配置文件的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

常见命令

# 默认配置文件启动
./nginx
# 停止
./nginx -s stop
# 重启,加载默认配置文件  
./nginx -s reload
# 启动指定某个配置文件
./nginx -c /usr/local/nginx/conf/nginx.conf

nginx.conf配置文件

#user  nobody;					# 指定Nginx worker进程运行以及用户组
worker_processes  1;

#error_log  logs/error.log;		# 错误日志的存放路径
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;		# 进程pid存放路径

# 事件模块指令,用来指定Nginx的IO模型,Nginx支持的有select、poll、kqueue、epoll等。不同的是epoll用在Linux平台上,而kqueue用在BSD系统中,对于Linux系统,epoll工作模式是首选
events {
	use epoll;
	# 定义Nginx每个进程的最大连接数,作为服务器来说:worker_connections * worker_processes;作为反向代理来说,最大并发数量为:worker_connections * worker_processes / 2,因为反向代理服务器,每个并发会建立与客户端的连接和与后端服务的连接,会占用两个连接
    worker_connections  1024;
}


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"';

    #access_log  logs/access.log  main;

	# 是否开启高效传输模式 on开启 off关闭
    sendfile        on;
    # 减少网络报文段的数量
    #tcp_nopush     on;
	
	# 客户端连接超时时间
    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;
	
	# 虚拟主机的配置
    server {
        listen       80;		# 虚拟主机的服务端口
        server_name  localhost;	# 用来指定IP地址或域名,多个域名之间用空格分开

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

		# URL地址匹配
        location / {
            root   html;					# 服务默认启动目录
            index  index.html index.htm;	# 默认访问文件,按照顺序找
        }

        #error_page  404              /404.html;	# 错误状态码的显示页面

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
    }


    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #    listen       8000;
    #    listen       somename:8080;
    #    server_name  somename  alias  another.alias;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}


    # HTTPS server
    #
    #server {
    #    listen       443 ssl;
    #    server_name  localhost;

    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;

    #    ssl_session_cache    shared:SSL:1m;
    #    ssl_session_timeout  5m;

    #    ssl_ciphers  HIGH:!aNULL:!MD5;
    #    ssl_prefer_server_ciphers  on;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}

}

location匹配规则

正则

  • ^:开始符号
  • $:结束符号

location路径匹配

  • location = /uri:=表示精准匹配,只有完全匹配上才能生效
  • location /uri:不带任何修饰符,表示前缀匹配
  • location ^~ /uri:匹配任何以/uri开头的匹配到就停止搜索
  • location /:通用匹配

正则匹配

  • 区分大小写匹配:~
  • 不区分大小写匹配:~*

图片服务器

server {
    listen       80;
    server_name  localhost a.com;

    location / {
        root   html;
        index  index.html index.htm;
    }
    location /img {
        alias /usr/local/img/;
    }
}

注意

  • 在location / 中配置root目录
  • 在location /path 中配置alias虚拟目录,目录后面的"/"符号一定要带上

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Nginx+SSL实现双向认证的示例代码

    Nginx+SSL实现双向认证的示例代码

    这篇文章主要介绍了Nginx+SSL实现双向认证的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01
  • Nginx 安装笔记(含PHP支持、虚拟主机、反向代理负载均衡)

    Nginx 安装笔记(含PHP支持、虚拟主机、反向代理负载均衡)

    Nginx安装简记(含PHP支持、虚拟主机、反向代理负载均衡) Nginx,据说高性能和稳定性比Apache还牛,并发连接处理能力强,低系统资源消耗。目前已有250多万web站点在使用
    2009-10-10
  • Nginx配置入门教程

    Nginx配置入门教程

    这篇文章主要介绍了Nginx配置入门教程,本文讲解了反向代理的概念、初始配置、进阶配置、负载均衡配置等内容,需要的朋友可以参考下
    2015-02-02
  • Nginx 请求超时的实现

    Nginx 请求超时的实现

    Nginx请求超时是服务器无法在规定时间内完成对客户端请求的响应,本文就来介绍一下Nginx 请求超时的实现,具有一定的参考价值,感兴趣的可以了解一下
    2025-02-02
  • Nginx Proxy缓存的具体实现

    Nginx Proxy缓存的具体实现

    本文主要介绍了Nginx Proxy缓存的具体实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-08-08
  • windows查看nginx是否启动及常用命令小结

    windows查看nginx是否启动及常用命令小结

    这篇文章主要给大家介绍了关于windows查看nginx是否启动及常用命令的相关资料,在Windows系统中,可以使用以下命令来操作和管理Nginx,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-06-06
  • Nginx session丢失问题处理解决方法

    Nginx session丢失问题处理解决方法

    这篇文章主要介绍了Nginx session丢失问题处理解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • 定期删除OpenResty/Nginx大日志文件的方法

    定期删除OpenResty/Nginx大日志文件的方法

    这篇文章主要介绍了定期删除OpenResty/Nginx大日志文件的方法,文中通过代码示例给大家讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-05-05
  • 浅谈一下Nginx性能优化

    浅谈一下Nginx性能优化

    这篇文章主要介绍了Nginx性能优化,Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务,需要的朋友可以参考下
    2023-04-04
  • 网页502 Bad Gateway nginx/1.20.1报错的原因与解决方法

    网页502 Bad Gateway nginx/1.20.1报错的原因与解决方法

    502 bad gateway nginx/1.20.1 是一个错误提示,通常出现在访问网站时出现问题,这篇文章主要给大家介绍了关于网页502 Bad Gateway nginx/1.20.1报错的原因与解决方法,需要的朋友可以参考下
    2024-03-03

最新评论