- 浏览: 2055784 次
- 性别:
- 来自: NYC
文章分类
- 全部博客 (628)
- Linux (53)
- RubyOnRails (294)
- HTML (8)
- 手册指南 (5)
- Mysql (14)
- PHP (3)
- Rails 汇总 (13)
- 读书 (22)
- plugin 插件介绍与应用 (12)
- Flex (2)
- Ruby技巧 (7)
- Gem包介绍 (1)
- javascript Jquery ext prototype (21)
- IT生活 (6)
- 小工具 (4)
- PHP 部署 drupal (1)
- javascript Jquery sort plugin 插件 (2)
- iphone siri ios (1)
- Ruby On Rails (106)
- 编程概念 (1)
- Unit Test (4)
- Ruby 1.9 (24)
- rake (1)
- Postgresql (6)
- ruby (5)
- respond_to? (1)
- method_missing (1)
- git (8)
- Rspec (1)
- ios (1)
- jquery (1)
- Sinatra (1)
最新评论
-
dadadada2x:
user模型里加上 protected def email ...
流行的权限管理 gem devise的定制 -
Sev7en_jun:
shrekting 写道var pattern = /^(0| ...
强悍的ip格式 正则表达式验证 -
jiasanshou:
好文章!!!
RPM包rpmbuild SPEC文件深度说明 -
寻得乐中乐:
link_to其实就是个a标签,使用css控制,添加一个参数: ...
Rails在link_to中加参数 -
aiafei0001:
完全看不懂,不知所然.能表达清楚一点?
"$ is not defined" 的问题怎么办
Nginx的rpm包自己打的
搜到别人说
其中HUP是重新载入配置
后来,又看到一些
简单说就是
nginx是超级稳定的服务器,一般不会因为超载问题而需要重启,重启的目的一般都是修改配置文件后需要加载一下。
最开始的时候,我是用最直接的重启方式
如果机器比较慢,kill进程时一瞬间杀不完,再执行一次即可。这种重启方式不是特别安全,如果配置有误,则会重启失败,需要重新修改配置文件然后再启动,期间会消耗一点时间。不过对于目前普遍还是不怎么严格的http界而言,这点时间还不至于产生太大损失,只要不是在关键时刻搞出来就好。如果希望沿用这种重启办法,我提议还是先好好测试吧。
后来我在nginx.net上看到了一种更奇妙的重启
我一般这样用
这种方式的好处是实现“平滑重启”,在ps -aux中可以看到,nginx首先启动新进程,旧的进程仍然提供服务,在一段时间后,旧的进程服务结束就自动关闭,剩下新进程继续服务。但是这种方式也是有缺点的,如果配置文件有误,或者资源冲突,则重启失效,但nginx并没有任何的提示!这就会时常发现改动的配置文件没有生效,又比较难找到问题。
所以,最后杂和了一下问题,弄了一个nginx.sh,这个版本的nginx.sh还是没有解决kill -HUP的资源冲突的问题,但解决了配置文件的问题。资源冲突的比如80端口被占用、日志文件目录没有创建这种的,我再想想办法。
这句话比较长,不容易记住,现在发现一种更为简洁的办法:
killall会将HUP指令传到所有的nginx进程里,包括master和worker,但是worker进程并不认识HUP指令,所以事实上只有master进程获取了HUP,并执行重启。
于是乎,nginx的kill指令:
都可以用killall简化执行。
搜到别人说
某网民 写道
ps aux| grep nginx找到nginx的进程号
kill -HUP xxxx(进程号)
于是,我就想那就这样呗:
ps ax |grep mongrel | awk '{print $1}' |xargs kill -HUP
kill -HUP xxxx(进程号)
于是,我就想那就这样呗:
ps ax |grep mongrel | awk '{print $1}' |xargs kill -HUP
其中HUP是重新载入配置
后来,又看到一些
简单说就是
killall -HUP nginx
nginx是超级稳定的服务器,一般不会因为超载问题而需要重启,重启的目的一般都是修改配置文件后需要加载一下。
最开始的时候,我是用最直接的重启方式
killall -9 nginx;/data/nginx/sbin/nginx
如果机器比较慢,kill进程时一瞬间杀不完,再执行一次即可。这种重启方式不是特别安全,如果配置有误,则会重启失败,需要重新修改配置文件然后再启动,期间会消耗一点时间。不过对于目前普遍还是不怎么严格的http界而言,这点时间还不至于产生太大损失,只要不是在关键时刻搞出来就好。如果希望沿用这种重启办法,我提议还是先好好测试吧。
后来我在nginx.net上看到了一种更奇妙的重启
kill -HUP $pid($pid就是nginx master进程的进程号)
我一般这样用
kill -HUP `cat /data/nginx/logs/nginx.pid`
这种方式的好处是实现“平滑重启”,在ps -aux中可以看到,nginx首先启动新进程,旧的进程仍然提供服务,在一段时间后,旧的进程服务结束就自动关闭,剩下新进程继续服务。但是这种方式也是有缺点的,如果配置文件有误,或者资源冲突,则重启失效,但nginx并没有任何的提示!这就会时常发现改动的配置文件没有生效,又比较难找到问题。
所以,最后杂和了一下问题,弄了一个nginx.sh,这个版本的nginx.sh还是没有解决kill -HUP的资源冲突的问题,但解决了配置文件的问题。资源冲突的比如80端口被占用、日志文件目录没有创建这种的,我再想想办法。
#!/bin/sh BASE_DIR='/data/' ${BASE_DIR}nginx/sbin/nginx -t -c ${BASE_DIR}nginx/conf/nginx.conf >& ${BASE_DIR}nginx/logs/nginx.start info=`cat ${BASE_DIR}nginx/logs/nginx.start` if [ `echo $info | grep -c "syntax is ok" ` -eq 1 ]; then if [ `ps aux|grep "nginx"|grep -c "master"` == 1 ]; then kill -HUP `cat ${BASE_DIR}nginx/logs/nginx.pid` echo "ok" else killall -9 nginx sleep 1 ${BASE_DIR}nginx/sbin/nginx fi else echo "######## error: ########" cat ${BASE_DIR}nginx/logs/nginx.start fi ---------------------------------------------
kill -HUP `cat /data/nginx/logs/nginx.pid`
这句话比较长,不容易记住,现在发现一种更为简洁的办法:
killall -HUP nginx
killall会将HUP指令传到所有的nginx进程里,包括master和worker,但是worker进程并不认识HUP指令,所以事实上只有master进程获取了HUP,并执行重启。
于是乎,nginx的kill指令:
kill -USR1 kill -QUIT ......
都可以用killall简化执行。
# # Spec File for Nginx # # Setup Subversion %define _svn_root %_topdir/SOURCES/ %define _svn_src 'https://10.0.0.33/svn/realview/trunk/' %define _unpackaged_files_terminate_build 0 Summary: RealWorx software application Name: nginx Version: 0.7.64 Release: 1 License: commercial Group: Applications/Communications Distribution: Vendor: Packager: BuildRoot: %{_topdir}/tmp/%{name}-%{version}-%{release} Source0: nginx-0.7.64.tar.gz Source1: ngx_http_auth_pam_module-1.1.tar.gz BuildArch: noarch #Requires: %description %prep #realview dose not start with user realwork, so it doest check the user and usergroup. #if ! /usr/bin/id realworx &>/dev/null; then # /usr/sbin/useradd -s /bin/bash -c "Realworx application user" -M realworx || \ # %logmsg "Unexpected error adding user \"realworx\"." #fi # #if ! /usr/sbin/groupmod realworx &>/dev/null; then # /usr/sbin/groupadd realworx # /usr/sbin/usermod -g realworx realworx || \ # %logmsg "Failed to change default group for user \"realworx\" to group \"realworx\"." #fi #cd %{_svn_root} echo "prep" #%setup -q %setup -q -b 0 -b 1 #make soft ln to source code under build path. #mkdir -p %{_topdir}/BUILD/%{name}-%{version} #lndir -silent %{_svn_root} %{_topdir}/BUILD/%{name}-%{version} #mkdir -p %{_topdir}/BUILD/ngx_http_auth_pam_module-1.1 #lndir -silent %_topdir/SOURCES/ngx_http_auth_pam_module-1.1 %{_topdir}/BUILD/ngx_http_auth_pam_module-1.1 %build echo Building %{name}-%{version}-%{release} ./configure --add-module=../ngx_http_auth_pam_module-1.1 #./configure --prefix=%{buildroot} --bindir=%{buildroot}/sunrise/bin make %install make install DESTDIR=%{buildroot} %files %dir %{_prefix}/local/nginx %config(noreplace) %{_prefix}/local/nginx/conf/nginx.conf %{_prefix}/local/nginx/conf/fastcgi_params %{_prefix}/local/nginx/conf/fastcgi_params.default %{_prefix}/local/nginx/conf/koi-utf %{_prefix}/local/nginx/conf/koi-win %{_prefix}/local/nginx/conf/mime.types %{_prefix}/local/nginx/conf/mime.types.default %{_prefix}/local/nginx/conf/nginx.conf.default %{_prefix}/local/nginx/conf/win-utf %{_prefix}/local/nginx/html/50x.html %{_prefix}/local/nginx/html/index.html %{_prefix}/local/nginx/sbin/nginx %{_prefix}/local/nginx/sbin/nginx.old %exclude %{_prefix}/src/* %exclude %{_prefix}/lib/* %changelog
- nginx-0.7.64-1.noarch.rar (1.6 MB)
- 下载次数: 6
- nginx.spec.rar (1.1 KB)
- 下载次数: 8
发表评论
-
Destroying a Postgres DB on Heroku
2013-04-24 10:58 900heroku pg:reset DATABASE -
VIM ctags setup ack
2012-04-17 22:13 3226reference ctags --extra=+f --e ... -
alias_method_chain方法在3.1以后的替代使用方式
2012-02-04 02:14 3254alias_method_chain() 是rails里的一个 ... -
一些快速解决的问题
2012-01-19 12:35 1445问题如下: 引用Could not open library ... -
API service 安全问题
2011-12-04 08:47 1350这是一个长期关注的课题 rest api Service的 ... -
Module方法调用好不好
2011-11-20 01:58 1312以前说,用module给class加singleton方法,和 ... -
一个ajax和rails交互的例子
2011-11-19 01:53 1868首先,这里用了一个,query信息解析的包,如下 https: ... -
Rails 返回hash给javascript
2011-11-19 01:43 2246这是一个特别的,不太正统的需求, 因为,大部分时候,ajax的 ... -
关于Rubymine
2011-11-18 23:21 2238开个帖子收集有关使用上的问题 前一段时间,看到半价就买了。想 ... -
ruby中和javascript中,动态方法的创建
2011-11-18 21:01 1203class Klass def hello(*args) ... -
textmate快捷键 汇总
2011-11-16 07:20 8102TextMate 列编辑模式 按住 Alt 键,用鼠标选择要 ... -
Ruby面试系列六,面试继续面试
2011-11-15 05:55 1990刚才受到打击了,充分报漏了自己基础不扎实,不肯向虎炮等兄弟学习 ... -
说说sharding
2011-11-13 00:53 1451这个东西一面试就有人 ... -
rails面试碎碎念
2011-11-12 23:51 1917面试继续面试 又有问ru ... -
最通常的git push reject 和non-fast forward是因为
2011-11-12 23:29 17172git push To git@github.com:use ... -
Rails 自身的many to many关系 self has_many
2011-11-12 01:43 2692简单点的 #注意外键在person上people: id ... -
Rails 3下的 in place editor edit in place
2011-11-12 01:20 921第一个版本 http://code.google.com/p ... -
Heroku 的诡异问题集合
2011-11-11 07:22 1669开个Post记录,在用heroku过程中的一些诡异问题和要注意 ... -
SCSS 和 SASS 和 HAML 和CoffeeScript
2011-11-07 07:52 12917Asset Pipeline 提供了内建 ... -
Invalid gemspec because of the date format in specification
2011-11-07 02:14 2085又是这个date format的错误。 上次出错忘了,记录下 ...
相关推荐
nginx配置文件修改保存,自动加载重启,并检查配置文件是否修改成功。 Windows下使用nginx,启动之后,再修改配置文件,无需命令重新加载,修改保存配置文件,实时更新nginx重启。
4. 重启 Nginx 服务器:使用 `nginx -s reload` 命令来重启 Nginx 服务器,以便生效新的配置。 5. 验证配置:使用 `nginx -T` 命令来验证 Nginx.conf 文件的配置是否正确。 常用 Nginx.conf 参数 以下是 Nginx....
Linux系统安装Nginx的安装教程描述...Linux系统安装Nginx需要安装依赖包、下载并解压安装包、安装Nginx、启动Nginx服务、配置Nginx服务、重启Nginx服务和访问服务器IP查看。这些步骤都是确保Nginx服务生效的必要条件。
nginx -s reload :修改配置后重新加载生效 nginx -s reopen :重新打开日志文件 nginx -t 测试nginx配置文件是否正确 检查正确性时,出现: nginx: the configuration file /home/kratos/local/nginx/conf/nginx...
最新版nginx,了解一下。yum install -y nginx systemctl start nginx...直接修改vim /etc/selinux/config找到SELINUX=enforcing修改为SELINUX=disable ,重启reboot或者setenforce 0 (该命令使用后不用重启也可以生效)
更改nginx.conf(或单独网站配置文件,例如在nginx -> sites-enabled下的站点配置文件 ) 中在server 区域加入: error_page 404 = /404.html 或者 error_page 404 = http://www.xxx.com/404.html 4.更改后重启nginx,...
在配置完成后,需要重启 Nginx 服务,以便生效新的配置。 反向代理的作用: 1. 提高了网络安全性:反向代理可以隐藏内部服务器的 IP 地址,保护服务器免受攻击。 2. 提高了负载均衡能力:反向代理可以将客户端的...
然后,我们可以重启Nginx来使配置生效。 四、让浏览器信任自己颁发的证书 在浏览器中,我们需要将生成的证书导入到系统的证书管理器中。我们可以按照以下步骤进行操作: 控制面板 -> Internet 选项 -> 内容 -> ...
重启 Nginx 服务,以便生效新的配置文件。 使用 Nginx 支持 .htaccess 伪静态 Rewrite 的方法可以实现 URL 重写,提高网站的访问速度和用户体验。但是,需要注意 .htaccess 文件的安全性,避免敏感信息泄露。
如果想下载后缀直接就是apk ipa的,可以修改 /usr/local/nginx/conf目录下的mime.types 增加如下配置,重启nginx生效 代码如下: application/vnd.android.package-archive apk; application/iphone pxl ipa; 您...
重启一下nginx的服务:/usr/local/nginx/sbin/nginx -s reload 就可以生效了。 blocksip.conf:的格式还有许多种,可以配置只允许的IP访问或者IP段访问: deny IP; allow IP; # block all ips deny all; # allow all...
主要介绍了Vue打包部署到Nginx时,css样式不生效的解决方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
* 让/etc/profile文件修改后立即生效:`. /etc/profile` * 测试:`java –version` 三、Nginx安装 * 安装PCRE正则表达式库:`yum install -y pcre-devel` * 安装编译环境:`yum install gcc gcc-c++ ncurses-devel...
Web APP 实现类似 Nginx 反向代理转发功能 Web APP 如何实现类似 Nginx 反向代理转发功能是指在 Web 应用程序中实现反向代理转发的功能,以便将用户的请求转发到其他服务器或应用程序上。反向代理转发是一种常用的...
由于公司使用过Ngnix,对于刚接触Nginx来说,... nginx -s reload 改变配置文件的时候,重启nginx工作进程,来时配置文件生效 nginx -s reopen 打开日志文件 3. Nginx配置 下面配置综合了网上的资料,记下,防止自己
1、nginx隐藏头部版本信息方法 编辑nginx.conf配置文件,在http{}内增加如下一行 ... …… } 编辑php-fpm配置文件,fastcgi.conf或fcgi.conf 找到: ...重启nginx服务生效 代码如下:[root@xmydlinu
· 使用说明 1、该文档执行的前提:windows、安装openssl工具、下载nginx服务器、安装jdk并配置环境变量 (压缩包 包括了openssl、nginx和相关的配置文件) 2、下载 openssl.cnf文件- ...执行完成后需要重启应用才生效
命令:systemctl restart firewalld(重启防火墙以使配置即时生效) 测试nginx是否可以访问。 配置nginx对ASP.NET Core应用的转发 修改 /etc/nginx/conf.d/default.conf 文件,将文件内容替换为: server { ...
准备篇 1.配置防火墙,开启80端口、3306端口 1 vim /etc/sysconfig/iptables ...service iptables restart #重启防火墙,使配置生效 2.关闭SELINUX(这个和服务器安全相关,先关闭。相关介绍:https:
配置完的网路负载平衡如下图,在这里说一下,并不是配置完成,网络负载平衡就会马上生效,他会有一个配置的过程,真正完成配置的状态如下图 下面我们来测试一下 找一台客户机:长ping 192.168.10.100 然后,我们...