Windows下Nginx的启动、停止等命令&Nginx 配置多域名&windows下设置Nginx开机自动启动

Windows下Nginx的启动、停止等命令

在Windows下使用Nginx,我们需要掌握一些基本的操作命令,比如:启动、停止Nginx服务,重新载入Nginx等,下面我就进行一些简单的介绍。
1、启动:

C:\server\nginx-1.0.2>start nginx

C:\server\nginx-1.0.2>nginx.exe

注:建议使用第一种,第二种会使你的cmd窗口一直处于执行中,不能进行其他命令操作。

2、停止:

C:\server\nginx-1.0.2>nginx.exe -s stop

C:\server\nginx-1.0.2>nginx.exe -s quit

注:stop是快速停止nginx,可能并不保存相关信息;quit是完整有序的停止nginx,并保存相关信息。

3、重新载入Nginx:

C:\server\nginx-1.0.2>nginx.exe -s reload

当配置信息修改,需要重新载入这些配置时使用此命令。

4、重新打开日志文件:

C:\server\nginx-1.0.2>nginx.exe -s reopen

5、查看Nginx版本:

C:\server\nginx-1.0.2>nginx -v

Windows下Nginx的启动、停止等命令

在Windows下使用Nginx,我们需要掌握一些基本的操作命令,比如:启动、停止Nginx服务,重新载入Nginx等,下面我就进行一些简单的介绍。

1、启动:

C:\server\nginx-1.0.2>start nginx

C:\server\nginx-1.0.2>nginx.exe

注:建议使用第一种,第二种会使你的cmd窗口一直处于执行中,不能进行其他命令操作。

2、停止:

C:\server\nginx-1.0.2>nginx.exe -s stop

C:\server\nginx-1.0.2>nginx.exe -s quit

注:stop是快速停止nginx,可能并不保存相关信息;quit是完整有序的停止nginx,并保存相关信息。

3、重新载入Nginx:

C:\server\nginx-1.0.2>nginx.exe -s reload

当配置信息修改,需要重新载入这些配置时使用此命令。

4、重新打开日志文件:

C:\server\nginx-1.0.2>nginx.exe -s reopen

5、查看Nginx版本:

C:\server\nginx-1.0.2>nginx -v

nginx: nginx version: nginx/1.0.2

C:\server\nginx-1.0.2>nginx -V

nginx: nginx version: nginx/1.0.2 

nginx: TLS SNI support enabled 

nginx: configure arguments: --builddir=objs.msvc8 --crossbuild=win32 --with-debug --prefix= --conf-path=conf/nginx.conf --pid-path=logs/nginx.pid --http-log-path=logs/access.log --error-log-path=logs/error.log --sbin-path=nginx.exe --http-client-body-temp-path=temp/client_body_temp
--http-proxy-temp-path=temp/proxy_temp --http-fastcgi-temp-path=temp/fastcgi_temp --with-cc-opt=-DFD_SETSIZE=1024 --with-pcre=objs.msvc8/lib/pcre-7.9 --with-zlib=objs.msvc8/lib/zlib-1.2.3 --with-select_module --with-http_realip_module --with-http_addition_module
--with-http_sub_module --with-http_dav_module --with-http_stub_status_module --with-http_flv_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-mail --with-ipv6 --with-openssl=objs.msvc8/lib/openssl-0.9.8r
--with-openssl-opt=enable-tlsext --with-http_ssl_module --with-mail_ssl_module

注:v只是简单显示版本信息,V不但显示版本信息,还显示配置参数信息。

6、测试或载入指定配置文件:

测试配置文件

C:\server\nginx-1.0.2>nginx.exe -t -c conf/default.conf

nginx: the configuration file C:\server\nginx-1.0.2/conf/default.conf syntax isok

nginx: configuration file C:\server\nginx-1.0.2/conf/default.conf test is successful

载入指定配置文件

C:\server\nginx-1.0.2>start nginx.exe -c conf/default.conf
设置自启动

Nginx 配置多域名配置

方法一:多个.conf方法(优点是灵活,缺点就是站点比较多配置起来麻烦)

这里以配置2个站点(2个域名)为例,n 个站点可以相应增加调整,假设:

IP地址: 192.168.1.100
域名1 example1.com 放在 /www/example1
域名2 example2.com 放在 /www/example2

 

配置 nginx virtual hosting 的基本思路和步骤如下:

把2个站点 example1.com, example2.com 放到 nginx 可以访问的目录 /www/

给每个站点分别创建一个 nginx 配置文件 example1.com.conf,example2.com.conf, 并把配置文件放到 /usr/local/nginx/vhosts/
然后在 /usr/local/nginx/nginx.conf 里面加一句 include 把步骤2创建的配置文件全部包含进来(用 * 号)
重启 nginx

1、打开 /usr/local/nginx/nginix.conf 文件,在相应位置加入 include 把以上2个文件包含进来

user  www www;

worker_processes  1;

 

# main server error log

error_log      /usr/local/nginx/log/nginx/error.log ;

pid     /usr/local/nginx/nginx.pid;

 

events {

worker_connections  51200;

}

# main server config

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”‘;

 

sendfile        on;

#tcp_nopush     on;

#keepalive_timeout  0;

keepalive_timeout  65;

gzip  on;

 

server {

listen         80;

server_name     _;

access_log      /usr/local/nginx/log/nginx/access.log main;

server_name_in_redirect  off;

location / {

root  /usr/share/nginx/html;

index index.html;

}

}

# 包含所有的虚拟主机的配置文件

include /usr/local/nginx/vhosts/*;

}

 

2、在 /usr/local/nginx 下创建 vhosts 目录

mkdir /usr/local/nginx/vhosts

3、在 /usr/local/nginx/vhosts/ 里创建一个名字为 example1.com.conf 的文件,把以下内容拷进去

server {
        listen  80;
        server_name  example1.com www. example1.com;
 
        access_log  /www/access_ example1.log  main;
 
        location / {
            root   /www/example1.com;
            index  index.php index.html index.htm;
        }
 
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/share/nginx/html;
        }
 
       # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        location ~ .php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /www/example1.com/$fastcgi_script_name;
            include        fastcgi_params;
        }
 
        location ~ /.ht {
            deny  all;
        }
}

3、在 /usr/local/nginx/vhosts/ 里创建一个名字为 example2.com.conf 的文件,把以下内容拷进去

server {
        listen  80;
        server_name  example2.com www. example2.com;
 
        access_log  /www/access_ example1.log  main;
 
        location / {
            root   /www/example2.com;
            index  index.php index.html index.htm;
        }
 
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/share/nginx/html;
        }
 
       # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        location ~ .php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /www/example2.com/$fastcgi_script_name;
            include        fastcgi_params;
        }
 
        location ~ /.ht {
            deny  all;
        }
}

5、重启 Nginx

 
/etc/init.d/nginx restart
 
方法二:动态目录方法(优点是方便,每个域名对应一个文件夹,缺点是不灵活)
 

这个简单的方法比起为每一个域名建立一个 vhost.conf 配置文件来讲,只需要在现有的配置文件中增加如下内容:

 

# Replace this port with the right one for your requirements
# 根据你的需求改变此端口
listen       80;  #could also be 1.2.3.4:80 也可以是1.2.3.4:80的形式
# Multiple hostnames seperated by spaces.  Replace these as well.
# 多个主机名可以用空格隔开,当然这个信息也是需要按照你的需求而改变的。
server_name  star.yourdomain.com *.yourdomain.com http://www.*.yourdomain.com/;
#Alternately: _ *
#或者可以使用:_ * (具体内容参见本维基其他页面)
root /PATH/TO/WEBROOT/$host;
error_page  404              http://yourdomain.com/errors/404.html;
access_log  logs/star.yourdomain.com.access.log;
location / {
root   /PATH/TO/WEBROOT/$host/;
index  index.php;
}

# serve static files directly

# 直接支持静态文件 (从配置上看来不是直接支持啊)
location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|html)$ {
access_log        off;
expires           30d;
}
location ~ .php$ {
# By all means use a different server for the fcgi processes if you need to
# 如果需要,你可以为不同的FCGI进程设置不同的服务信息
fastcgi_pass   127.0.0.1:YOURFCGIPORTHERE;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME  /PATH/TO/WEBROOT/$host/$fastcgi_script_name;
fastcgi_param  QUERY_STRING     $query_string;
fastcgi_param  REQUEST_METHOD   $request_method;
fastcgi_param  CONTENT_TYPE     $content_type;
fastcgi_param  CONTENT_LENGTH   $content_length;
fastcgi_intercept_errors on;
}
location ~ /.ht {
deny  all;
}

 

最后附另外一个二级域名匹配的方法

 

绑定域名
server_name *.abcd.com;
获取主机名
if ( $host ~* (.*).(.*).(.*))
{
set $domain $1;
}
定义目录
root html/abc/$domain/;
location /
{
root html/abcd/$domain;
index index.html index.php;

时间: 2024-10-20 02:01:30

Windows下Nginx的启动、停止等命令&Nginx 配置多域名&windows下设置Nginx开机自动启动的相关文章

linux下Mysql的启动关闭的命令

 下面我来为各位介绍linux下Mysql的启动关闭的命令,有需要了解的朋友不防进入看看吧.     linux下Mysql的启动关闭(本文基于centos6.4.mysql5.7.3),mysql安装在/usr/local/mysql目录下: [root@lnmp ~]# /usr/local/mysql/bin/mysql --version /usr/local/mysql/bin/mysql  Ver 14.14 Distrib 5.7.3-m13, for Linux (x86_64)

Centos下设置程序开机自动启动命令介绍

1.默认为系统服务的程序开机启动方法 例如:mysqld,httpd等 可以直接使用命令 chkconfig mysqld on 这样开机就可以启动mysql了. 2.不是系统服务,需要命令启动的 直接编辑 /etc/rc.d/rc.local 在最下面一行加入启动命令即可.例如:  代码如下 复制代码 su - svn -c "svnserve -d --listen-port 9999 -r /opt/svndata" //这样开机就可以自动启动svnserver了. 1.把启动程

远程拷贝、查看端口、vim常见快捷键、查找替换命令、grep命令、查看存储空间的命令、chkconfig命令、系统自动启动级别、主机名配置、IP地址配置、域名映射、防火墙设置

2.1.远程拷贝 (将/export/servers/hadoop上的文件拷贝到bigdate@192.168.1.1:/export/servers/ ) scp –r /export/servers/hadoop bigdate@192.168.1.1:/export/servers/  上面的意思是说将 /export/servers/hadoop 拷贝到192.168.1.1这台服务器下的bigdate用户下的/export/servers/这个文件夹下 2.2.查看端口 netstat

DOS下一些很有用的网络命令

网络 DOS下常用网络相关命令解释Arp显示和修改"地址解析协议"(ARP) 所使用的到以太网的 IP 或令牌环物理地址翻译表.该命令只有在安装了 TCP/IP 协议之后才可用. arp -a [inet_addr] [-N ][if_addr]] arp -d inet_addr [if_addr] arp -s inet_addr ether_addr [if_addr] 参数 -a 通过询问 TCP/IP 显示当前 ARP 项.如果指定了 inet_addr,则只显示指定计算机的

CentOS设置服务开机启动的一些命令介绍

1.利用 chkconfig 来配置启动级别 在CentOS或者RedHat其他系统下,如果是后面安装的服务,如httpd.mysqld.postfix等,安装后系统默认不会自动启动的.就算手动执行 /etc/init.d/mysqld start 启动了服务,只要服务器重启后,系统仍然不会自动启动服务. 在这个时候,我们就需要在安装后做个设置,让系统自动启动这些服务,避免不必要的损失和麻烦. 其实命令很简单的,使用chkconfig即可. 比如要将mysqld设置为开机自动启动:  代码如下

Mac OS X系统下设置开机自动启动运行软件(开机启动项)的方法

  开机自行启动运行软件可以说是把双刃剑,一方面方便操作,另一方面开机启动项过多会降低开机速度.今天就介绍苹果电脑 Mac OS X 系统下设置开机自动启动运行软件(开机启动项)的方法. 右击 Dock 上的图标即可设置软件随 Mac 开机自动加载运行 首先是最简单的设置 Mac 开机自动启动运行软件(开机启动项)的方法:右击苹果电脑 Dock 栏上的软件图标,点击"选项",选择"在登录时打开". OK,下次开机,该软件会和 Mac OS X 系统一起自动启动.反之

云服务器 ECS 配置:ECS之Windows服务器时钟同步设置

ECS之Windows服务器时钟同步设置 简介 NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议,对于一些对时间极度敏感的应用(例如,通信行业), 如果不同机器时间不一致,就有可能导致读取到值不同. 操作步骤 修改默认NTP服务器地址 Windows Server操作系统默认都配置了微软默认的NTP服务器(time.windows.com),但可能会因为网络的原因经常出现同步出错.这时我们可以将默认的NTP服务器更换成阿里的NTP服务器

linux/windows环境下mysql数据库启动、停止、重启命令

linux环境下 一.启动 1.使用 service 启动:service mysqld start 2.使用 mysqld 脚本启动:/etc/inint.d/mysqld start 3.使用 safe_mysqld 启动:safe_mysqld& 二.停止 1.使用 service 启动:service mysqld stop 2.使用 mysqld 脚本启动:/etc/inint.d/mysqld stop 3.mysqladmin shutdown 三.重启 1.使用 service 

Java零基础教程之Windows下安装、启动Tomcat服务器方法图解(免安装版)_java

相关阅读: Java零基础教程之Windows下安装 JDK的方法图解 官网下载 你是 Windows 环境,所以,打开浏览器,输入地址:http://tomcat.apache.org/download-70.cgi 选择对应的 ..-bit Windows zip下载就可以了. 安装 找到你下载的 ZIP 包,解压到你认为合适的目录,其实这是免安装版. 启动 进入 bin 目录,找到startup.bat双击,这样就算启动了 Tomcat 了,现在在浏览器输入地址+端口8080(默认)即可看