㈠ linux系统开启关闭nginx出现的问题
1、第一种方法:首先在进入nginx可执行目录bin,输入代码:cd /usr/local/nglnx/sbln。
2、然后输入代码:./nginx -s reload,就可以重启nginx了。
3、第二种方法:查找当前nginx进程号,然后输入命令:kill -HUP 进程号,实现重启nginx服务。
㈡ 怎么编译安装nginx1.8.1
要编译安装Nginx,首先我们要安装依赖包 pcre-devel 和 zlib-devel:
# yum install pcre-devel zlib-devel -y
程序默认是使用 nobody 身份运行的,我们建议使用 nginx 用户来运行,首先添加Nginx组和用户,不创建家目录,不允许登陆系统
# groupadd nginx
# useradd -M -s /sbin/nologin -g nginx nginx
准备工作完成后就是下载编译安装Nginx了,可以从我提供的网盘下载,也可以去Nginx的官网下载。
首先解压源码包:
# tar xf nginx-1.4.4.tar.gz
然后 cd 到解压后的目录就可以执行 ./configure 了
# cd nginx-1.4.4
指定安装目录和运行时用的属主和属组,并启用状态监控模块等
# ./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--user=nginx \
--group=nginx \
--with-http_ssl_mole \
--with-http_flv_mole \
--with-http_stub_status_mole \
--with-http_gzip_static_mole \
--http-client-body-temp-path=/var/tmp/nginx/client/ \
--http-proxy-temp-path=/var/tmp/nginx/proxy/ \
--http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \
--http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \
--http-scgi-temp-path=/var/tmp/nginx/scgi \
--with-pcre
等配置完成后就可以 make && make install 了
# make && make install
# mkdir /var/tmp/nginx/client/ -pv
等编译安装完成后在 /usr/local 下就会出现 Nginx 这个目录了,进入这个目录后发现目录非常简单。它的配置文件存放在 conf 目录中,网页文件存放在 html 中,日志文件存放在 logs 中,sbin 目录下只有一个可执行程序 "nginx"
接下来我们简单的为它提供一个服务脚本吧!
# vim /etc/init.d/nginx
新建文件/etc/rc.d/init.d/nginx,内容如下:
#!/bin/bash
# chkconfig:235 85 15
# description: Nginx is an HTTP server
. /etc/rc.d/init.d/functions
start() {
echo "Start..."
/usr/local/nginx/sbin/nginx &> /dev/null
if [ $? -eq 0 ];then
echo "Start successful!"
else
echo "Start failed!"
fi
}
stop() {
if killproc nginx -QUIT ;then
echo "Stopping..."
fi
}
restart() {
stop
sleep 1
start
}
reload() {
killproc nginx -HUP
echo "Reloading..."
}
configtest() {
/usr/local/nginx/sbin/nginx -t
}
case $1 in
start)
start ;;
stop)
stop ;;
restart)
restart ;;
reload)
reload ;;
configtest)
configtest ;;
*)
echo "Usage: nginx {start|stop|restart|reload|configtest}"
;;
esac
之后给这个文件可执行权限:
# chmod +x /etc/init.d/nginx
好了,现在可以使用 start,stop 这些参数控制Nginx服务了
由于脚本是我自己写的,还有许多不尽人意的地方,欢迎大家修改和完善!
现在我们就试试启动服务看看效果吧:
# service nginx start
记得关闭 SElinux 和 iptables 防火墙哦,
# service iptables stop
# setenforce 0
接下来就在浏览器中访问你服务的IP看看效果吧!是不是出项了欢迎的字样呢
接下来就研究下 Nginx 的配置文件吧!
# vim /usr/local/nginx/conf/nginx.conf
各项参数的意义如下:
worker_processes 1; 工作进程数量
error_log logs/error.log; 日志文件位置
pid logs/nginx.pid; pid文件位置
worker_connections 1024; 没进程的连接数
listen 80; 监听端口
server_name localhost; 主机名
root html; 网站根目录
index index.html index.htm; 网站索引页
error_page 500 502 503 504 /50x.html; 访问错误页面
剩下的其他被注释掉的代码块:
location ~ \.php$ { . . . . . . } 对PHP的支持,需要安装PHP
server { . . . . . . } 添加server代码块能添加虚拟主机
剩下还有监听443端口的超文本传输安全协议 HTTPS server 需要在编译Nginx时添加ssl的支持
接下来我们试着添加一台虚拟主机吧,虚拟主机的添加可以基于端口,可以基于IP,也可以基于主机名,我们挨个来看看:
基于端口:
首先编辑配置文件,添加server代码块,记得要写到http{ . . . . . . }这个大的代码块中。
server {
listen 8080;
server_name localhost;
location / {
root /var/www/html;
index index.html index.htm;
}
}
这样就添加了一个监听8080端口的服务,你也可以定义自己喜欢的端口哦。
接下来检查下配置文件有没有问题,如果最后一个单词显示successful就代表没问题了,可以重新启动Nginx了
# service nginx configtest
# service nginx restart
接下来就给第二个虚拟主机写一个index吧!首先创建目录
# mkdir -pv /var/www/html
# echo '<h1>Hi! This is 8080!</h1>' > /var/www/html/index.html
好了 接下来试着在浏览器中访问访问,记得第二个主机要加上端口访问哦
现在试着用不同的IP建立虚拟主机吧!我们可以在一块网卡上绑定多个IP地址的方式来实现
# ifconfig eth0:0 10.0.0.4/8
记得把IP换成你自己的哦!然后ifconfig看看是不是多出来一个网卡IP了呢
让后继续修改配置文件,这回要修改两个地方,一个是原本自带的站点的 listen 项,一个是自己添加的站点的 listen 项。
基于IP:
server {
listen 10.0.0.3:80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
}
server {
listen 10.0.0.4:80;
server_name localhost;
location / {
root /var/www/html;
index index.html index.htm;
}
}
让他们只监听不同的IP,用相同的端口
接下来再浏览器上用不同的IP来访问试试吧,及的还得重启Nginx,先检查一下,出现错误了看看哪里配置的不对,然后就可以重启了。
# service nginx congiftest
# service nginx restart
如果配置给网卡的第二个IP不想要了,把它停掉就可以了
# ifconfig eth0:0 down
再 ifconfig 看看是不是没有了呢
现在试试用不同的主机名吧!也是企业用的最多的方式。我们把两个站点的listen项都改为80,然后修改service_name项为定义的主机名
基于主机名:
server {
listen 80;
server_name ybmq.com;
location / {
root html;
index index.html index.htm;
}
}
server {
listen 80;
server_name zhzz.com;
location / {
root /var/www/html;
index index.html index.htm;
}
}
然后重启Nginx吧!
可是我们在浏览器上怎么通过域名访问呢?要知道我们访问 啊,qq 啊之类的是通过DNS服务器的,难道我们还要配置一台DNS服务器?其实不然,我们通过修改客户机的 hosts 文件就可以了。hosts文件是一个本地的域名解析文件,我们要解析哪些域名只要把域名和对应的IP写到一起就可以了。在Windows XP之后的系统中,这个文件位于:
C:\Windows\System32\drivers\etc\hosts
我们用文本编辑器打开,添加两个相同的IP对应的两个不同的主机名就可以了。
如下图所示
如果你打开这个文件发现已经有很多IP地址了,可以直接在最后加入这两行,也可以直接清空这个文件,不会有什么问题的。这个文件的用途还可以屏蔽一些网站哦,只需要把网址对于的IP改为 127.0.0.1 也就是本地回环地址,浏览器查询域名对应的IP时时先通过查询这个文件的,如果查询到了,不管对错都不会访问DNS服务器了,所以我们给它一个错误的地址,那它一辈子也打不开被屏蔽掉的网站了。
好了 接下来就在浏览器中试试用用域名访问你的两个站点吧。
如果大家还用IP访问会是什么情况呢?我不说了,大家还是自己测试吧 哈哈o(^▽^)o
㈢ 如何在各系统平台配置SNMP
在Windows XP/2000 系统中配置 SNMP 代理
关于如何在Windows系统上安装SNMP代理,可参见在Windows系统中安装SNMP代理。
在Windows XP/2000 系统中配置 SNMP 代理的具体步骤如下:
点击开始,指向设置,然后点击控制面板。双击管理工具,然后双击计算机管理。
在控制台树中,点击服务和应用程序,然后点击服务。
下滚明细表窗格,并点击 SNMP service。
点击操作菜单上的属性。
如果您想在身份验证失败的时候有陷阱信息发出,那么请在安全分页中选择发送身份验证陷阱。
在接收的团体名称下点击添加。
在团体权利下,为主机选择一个许可的级别以处理从被选团体接收的请求。
在社区名称中输入名称(区分大小写),然后点击添加。
指定是否从主机接收SNMP 数据包:
要想从网络上的任何主机接收SNMP 请求,且无论其身份,请点击接收来自任何主机 SNMP 数据包。
要想限制接收 SNMP 数据包,请点击接收来自这些主机的 SNMP 数据包,点击添加,输入适当的主机名、IP或IPX 地址, 然后再次点击添加。
点击应用。
页首
配置SNMP陷阱的步骤如下:
点击开始,指向设置,然后点击控制面板。双击管理工具,然后双击计算机管理。
在控制台树中,点击服务和应用程序,然后点击服务。
下滚明细表窗格,并点击 SNMP service。
点击操作菜单上的属性。
打开陷阱分页窗格,在社区名称下输入计算机将把陷阱发至的社区名称(区分大小写),然后点击添加到列表。
在陷阱目标中点击添加。
在主机名,IP或 IPX地址中输入主机的相关信息并点击添加。
重复第5步到第7步,直到添加完您要添加的所有团体和陷阱目标。
点击确定。
在 Windows NT 系统配置SNMP 代理
关于如何在WindowsNT系统上安装SNMP代理,可参见在Windows系统中安装SNMP代理。
在 Windows NT 系统中配置SNMP 代理的步骤如下:
右击桌面上的网上邻居图标。
点击属性。
点击服务。
点击 SNMP 服务,然后点击属性。
点击安全分页按钮。
要想为错误的验证发送陷阱,请选择发送验证陷阱复选框。
在接收的团体名称下点击添加。
在团体名称框中,输入共同体名称(从该团体接收请求)。
点击添加,将该名称移入接收的团体名称列表中。
重复第 9 步添加任何团体名称。
点击以下选项之一,指定是从任何主机接收 SNMP 数据包,还是仅从指定的主机接收SNMP 数据包:
如果不依据源计算机 ID 来拒绝 SNMP 数据包,可选择接收来自任何主机的 SNMP 数据包。
如果仅从列出的计算机接收SNMP 数据包,请选择仅接收来自这些主机的SNMP 数据包。 要想指定特定的主机,请点击添加,在IP 主机或IPX 地址框中输入主机的名称和地址(从该主机接收请求),然后点击添加,将该名称移入仅接收来自这些主机的SNMP 数据包列表。
重复第 11 步添加任何主机。
在代理分页中指定适当的信息(如有关用户位置和服务的注释)。
点击确定。
配置 SNMP 陷阱的步骤如下:
右击桌面上的网上邻居图标。
点击属性。
点击服务。
点击 SNMP 服务,然后点击属性。
点击陷阱分页按钮。
在团体名称框中输入名称,以识别您想要该计算机将陷阱发送到的每个团体。团体名称是区分大小写的。
输入每个名称后,点击添加,将这些名称添加到列表。
添加了团体之后,在其仍是高亮时,点击陷阱目标下的添加,为陷阱要发送到的每个团体指定主机。
在IP主机/地址或IPX地址框中输入主机名,然后点击添加,为所选团体将名称和地址移入陷阱目标列表。
重复第10步,添加任何主机。
点击确定。
在 Linux 8.0以前的版本配置代理
关于如何在Linux系统上安装SNMP代理,可参见 在Linux系统中安装SNMP代理。
如果代理已运行,请使用以下命令将其停止:
/etc/rc.d/init.d/snmpd stop
在/etc/rc.d/init.d/snmpd 文件中做以下修改:
将
daemon /usr/sbin/snmpd $OPTIONS
改为
daemon /root/ucd_agent/sbin/snmpd $OPTIONS
将
killproc /usr/sbin/snmpd
改为
killproc /root/ucd_agent/sbin/snmpd
这是用于在启动和停止SNMP 代理时选择当前安装的版本。
使用命令 /etc/rc.d/init.d/snmpd start来启动代理。
在 Linux 8.0版本及8.0 以上版本配置代理
在Linux 8.0版本及8.0 以上版本,可以使用 SNMP 的最新版本,只需在 snmpd.conf 文件中做以下修改:
在
# name incl/excl subtree mask(optional)
行后插入
view allview included .1.3.6
将
# group context sec.modelsec.level prefix read write notif
以后的行
lineaccess notConfigGroup “” any noauth exact systemview none none
改为
access notConfigGroup “” any noauth exact allview none none
然后使用以下命令重启 snmp 代理:
/etc/rc.d/init.d/snmpd restart
在 Solaris 机器中配置代理
关于如何在Windows系统上安装SNMP代理,可参见在Solaris系统中安装SNMP代理。
如果代理已运行,请使用以下命令将其停止:
/etc/init.d/init.snmpdx stop
在/etc/init.d/init.snmpdx 文件中做以下修改:
将 if [ -f /etc/snmp/conf/snmpdx.rsrc -a -x /usr/lib/snmp/snmpdx ]; then
/usr/lib/snmp/snmpdx -y -c /etc/snmp/conf -d 3 -f 0
fi
改为
/sbin/snmpd
将 /usr/bin/pkill -9 -x -u 0 ‘(snmpdx|snmpv2d|mibiisa)’
改为
/usr/bin/pkill -9 -x -u 0 ‘(snmpd)’
使用命令 /etc/init.d/init.snmpdx start 重启代理。