linux
Nginx 502 Bad Gateway 自动重启shell脚本
星期三, 八月 14th, 2013 | JAVA-and-J2EE, linux, php | 2 Comments
Nginx 502 Bad Gateway 自动重启shell脚本,启动 php 和重启nginx
新建 php文件 200_ok.php 文件(这个随便,内容也随便只要是想使用curl的访问方式)
<?php echo "200"; ?> |
建立一个脚本 vi web_monitor.sh (里面还有重启tomcate 的指令,后来发现使用正常关闭shutdown 有文件后台进程相关,可以直接杀掉进程的方式 ps -ef|grep java)
内容如下:
#!/bin/bash #author:Pomelo Lee #website://www.pomelolee.com CheckUrl="//www.pomelolee.com/200_ok.php" STATUS_CODE=`curl -o /dev/null -m 10 --connect-timeout 10 -s -w %{http_code} $CheckUrl` #echo "$CheckURL Status Code:\t$STATUS_CODE" if [ "$STATUS_CODE" != "200" ]; then /usr/local/webserver/php/sbin/php-fpm stop sleep 1 /usr/local/webserver/php/sbin/php-fpm start sleep 1 pkill -9 nginx sleep 1 /usr/local/webserver/nginx/sbin/nginx #sleep 1 #/usr/local/tomcat7/bin/shutdown.sh #sleep 2 #/usr/local/tomcat7/bin/startup.sh fi |
然后是设定权限:chmod 755 /root/web_monitor.sh
运行定时程序:crontab -e
输入以下内容每隔5分钟检测一次:*/5 * * * * /root/web_monitor.sh
纠结的ln软链接
星期三, 七月 17th, 2013 | linux | 没有评论
好久没有更新博客了,太忙了,加班连续加了2个多月了,每天早9:30 到晚9:30 周六还要上班,实在是累的不行.
不抱怨了,都是为了更好的完成项目.
记录下建立软链接和删除软链接的使用,老是弄混,浪费时间
ln -s /home/king2012/upfiles/mp3/ /home/king2012/ rm -rf /home/king2012/mp3 |
此处在/home/king2012/ 下建立了一个mp3的文件夹链接到 /home/king2012/upfiles/mp3/ (真正有文件的地方)
删除软链接和删除文件夹一样即可.
注:搞不懂自己怎么老是把ln 写成ls ,估计是ls用的太多了,害我浪费了那么多时间还怀疑执行有误,原来是指令有误
nginx从1.0升级到1.2.7的log_format问题
星期三, 二月 20th, 2013 | linux | 没有评论
今天看了nginx的升级到了1.2.7的系列了,自己的还停留在1.0.7版本有点心痒痒了,就升级了下:
不停机平滑升级新版文章参考: //www.pomelolee.com/646.html
通过./sbin/nginx -t 检查发现
[warn] the “log_format” directive may be used only on “http” 的警告信息
修复起来也方便:
把这个格式信息从server 里面移动到http的里面,有多个server 可以并到一起减少了配置(如果格式一样的话,算是新版本的一个优化了)
log_format access ‘$remote_addr – $remote_user [$time_local] “$request” ‘
‘$status $body_bytes_sent “$http_referer” ‘
‘”$http_user_agent” $http_x_forwarded_for’;
在通过./sbin/nginx -t 检查 就都ok了
libcurl升级后找不到libcurl.so.3解决之法
星期日, 二月 3rd, 2013 | linux, webgame, 游戏开发 | 没有评论
系统装的是libcurl 7.19的版本,编译的动态库是libcurl.so.4
自己的程序编译是在libcurl 7.15的版本下编译的,用的是libcurl.so.3的版本,要做下软链接即可:
根据自己使用的是32位系统或者64位系统 做如下处理:
1 2 | cd /usr/lib 或者 cd /usr/lib64 ln -s libcurl.so.4 libcurl.so.3 |
samba找不到网络路径和无法访问的解决办法
星期六, 十二月 15th, 2012 | linux | 3 Comments
在前面一篇文章介绍了怎么搭建samba共享文件夹
具体见:linux共享文件夹给windows之samba搭建 //www.pomelolee.com/1072.html
比较郁闷的是,看到了文件夹,可是点击的时候出现了 找不到网络路径.
解决方法:
1.所设共享目录权限问题. (基本上不是这个问题)
1 | chmod 777 /data/samba/username |
2.linux防火墙的问题.(主要原因,如果有selinux 这个可以降低或者关闭)
1 | rpm -qa | grep selinux |
>>>>>.防火墙的关闭方法;
运行:setup 命令 使用 tab和 space选择即可
› Continue reading
linux共享文件夹给windows之samba搭建
星期六, 十二月 15th, 2012 | linux | 2 Comments
本文的环境是centos系统,为指定用户的共享,工作开发使用等
1.安装samba
1 | yum install samba smbfs |
2.添加要使用的帐号
1 2 | useradd -s /sbin/nologin username smbpasswd -a username |
3.创建目录
1 2 3 | mkdir -p /data/samba/username # 修改权限为777,权限交给samba管理 chmod 777 /data/samba/username |
webgame遭遇double free or corruption (!prev):
星期二, 十二月 4th, 2012 | linux, webgame, 游戏开发 | 没有评论
游戏在内测的时候遭遇到double free or corruption (!prev):
单从上面的理解很简单就是说 有地方调了2次 free();的内存释放函数.
查了下,这种低级错误的可能性不大,但是游戏的环境是在 一个多线程的代码,在主线程中申请了一块内存,在另一个线程中释放内存,估计是这个原因.
*** glibc detected *** /home/sara/webgame/t1: double free or corruption (!prev): 0x090634c8 ***
======= Backtrace: =========
/lib/libc.so.6[0x7c7261]
/home/sara/webgame/t1[0x804891e]
/home/sara/webgame/t1[0x9804fb0]
/lib/libpthread.so.0[0x8dcab5]
/lib/libc.so.6(clone+0x5e)[0x83383e]
00759000-008c7000 r-xp 00000000 fd:00 158979 /lib/libc-2.11.so
008c7000-008c8000 —p 0016e000 fd:00 158979 /lib/libc-2.11.so
008c8000-008ca000 r–p 0016e000 fd:00 158979 /lib/libc-2.11.so
008ca000-008cb000 rw-p 00170000 fd:00 158979 /lib/libc-2.11.so
进过排查和结合网上的遇到的说明修正如下函数:(另:可以在你做free()的统一函数地方做赋值指针为null做检测)
› Continue reading
PHP语法容易忽略的问题小结
星期四, 十一月 1st, 2012 | linux, php | 没有评论
之前收藏的一个php常见的问题小结,挺不错的,在此摘录下.
1.PHP变量区分大小写,定义的函数、类名以及系统内置的函数和关键字不区分大写。
2.PHP结束标记“?>”前的那条语句的分号可省略,但不推荐。
3.注释:
<? echo $a; #print $a ?><h1>something</h1> 遇到php结束符号则#注释自动终结 类似的:/*注释也是遇到php结束符号则注释自动终结 上面的语法合法,但不推荐使用。 /*ddddddd /*ffffff */ dddd */ 这样的注释嵌套导致出错,因为PHP视图执行“ffffff”。 |
4.类名stdClass被保留
5.define函数定义常量,常量引用时不加$
6.函数名和关键字不区分大小写
7.浮点数的值仅仅是数的近似表示,尽量避免假定浮点数是完全精确的,利用“==”比较浮点数时,通常将其移动若干位小数位置后比较。
if( int($a * 1000) == int($b * 1000)).....//后移三位小数点并转换为整形后比较 |
8.
$path='c:\\windows';echo $path;打印:"c:\\windows" |
9.资源(或称为句柄)实际上是整数,使用资源的好处是它会自动完成内存的管理,但最后一个对资源的引用销毁时,常见该资源的扩展被调用来为该资源释放所有内存,关闭所有连接等。函数中容易发现自动清空资源的好处,将资源指派给一个局部变量,当函数调用结束时,变量的值自动被php回收。例如:
function func1(){ $res = database_connect();database_query($res); //退出函数时连接自动关闭 } |
尽管可用上面的方法,还是推荐显式的销毁资源。
10.可变变量(即变量的变量)
$foo = 'abc'; $$foo = 'xyz';//$abc的值 "xyz" |
11.php中的变量引用:就是如何创建变量的别名。(用C中的指针理解要容易些)
$a = & $b; //$a和$b正向相同的内存区域。其一改变另一也改变,销毁其一不影响另一。 函数利用引用可以传递参数(避免赋值大的字符串或数组)。例如: function &ret_ref(){ $var="php";//$var是大树组或者的字符串时效率比较高 return $var; } $v = & ret_ref(); |
12.php中的局部变量只存在与函数中,循环、分支和块中的变量不是局部变量。函数为定义的变量为全局变量,函数内要访问全局变量必须声明为global,然后再使用(也可以使用笨方法,就是全局数组$GLOBALS)。
13.php使用“引用计数”和“写时复制”技术。
常用常用正则表达式集锦
星期一, 十月 29th, 2012 | JAVA-and-J2EE, linux, php | 没有评论
此处记录下,以后方便查找.
1.匹配中文字符
[\u4e00-\u9fa5] |
2.匹配双字节字符(包括汉字)
[^\x00-\xff] |
3.匹配空白行
\n\s*\r |
4.匹配E-mail地址
\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* |
5.匹配网站URL地址
[a-zA-z]+://[^\s]* |
6.匹配国内电话号码
\d{3}-\d{8}|\d{4}-\d{7} |
7.匹配腾讯QQ号码
[1-9][0-9]{4,} |
教你怎样上twitter,facebook等—ssh代理设置教程(vforchrome版本)
星期五, 十月 5th, 2012 | computer, linux | 3 Comments
1.下载浏览器,地址:
vforchrome官方下载:https://vforchrome.googlecode.com/files/vforchrome0.13.7z
本地备用下载:vforchrome0.13.7z
2.解压,打开chrome.exe,然后点击右上角设置
然后添加,输入主机地址,端口,用户密码,如下图
设置完成! 你可以上http://www.youtube.com/ https://twitter.com/ https://www.facebook.com/ 啦
需要ssh帐号的可以给我留言哦.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Search
相关文章
热门文章
最新文章
文章分类
- ajax (10)
- algorithm-learn (3)
- Android (6)
- as (3)
- computer (85)
- Database (30)
- disucz (4)
- enterprise (1)
- erlang (2)
- flash (5)
- golang (3)
- html5 (18)
- ios (4)
- JAVA-and-J2EE (186)
- linux (143)
- mac (10)
- movie-music (11)
- pagemaker (36)
- php (50)
- spring-boot (2)
- Synology群晖 (2)
- Uncategorized (6)
- unity (1)
- webgame (15)
- wordpress (33)
- work-other (2)
- 低代码 (1)
- 体味生活 (40)
- 前端 (21)
- 大数据 (8)
- 游戏开发 (9)
- 爱上海 (19)
- 读书 (4)
- 软件 (3)