博文

目前显示的是 二月, 2013的博文

Freebsd8.2 32位ports安装php5.2+fpm+mysql5.1+nginx+Zend

一、安装软件前的准备: 系统的安装:让机房最小化安装32位freebsd8.2系统。 ports的安装:机房装好系统后,远程登录,自己在线安装ports 命令: sysinstall->Configure->Distributions->ports->FTP->China->OK 修改系统密码:passwd回车 二、手动安装nginx+php (1) 进入系统后,准备cvs更新: 1. cd /usr/ports/net/cvsup-without-gui # make install clean 2. cp /usr/share/examples/cvsup/ports-supfile /etc/ports-supfile 3. # ee /etc/ports-supfile 将其中的#*default host=CHANGE_THIS.FreeBSD.org一行改为: *default host=cvsup4.FreeBSDchina.org {也可以指定更新版本日期,例如加上:*default date=2009.10.05.00.00.00 (这个可以省略) } 4. 更新ports /usr/local/bin/cvsup -g -L 2 /etc/ports-supfile 2) 安装mysql #cd /usr/ports/databases/mysql51-server #make WITH_CHARSET=gbk WITH_XCHARSET=all WITH_PROC_SCOPE_PTH=yes BUILD_OPTIMIZED=yes BUILD_STATIC=yes SKIP_DNS_CHECK=yes WITHOUT_INNODB=yes install clean #cp /usr/local/share/mysql/my-large.cnf /usr/local/etc/my.cnf ##mysql的优化参数,也可以手动修改 #rehash # mysql_install_db –user=mysql ##初始化mysql #/usr/local/bin/mysqld_safe & ##启动mysql #/usr/local/bin/mysqladmin -u root password...

dedecms安全设置之php.ini设置

php.ini中修改参数: disable_functions = system,exec,shell_exec,passthru,proc_open,proc_close,proc_get_status,checkdnsrr,getmxrr, getservbyname,getservbyport,syslog,popen,show_source,highlight_file,dl,socket_listen,socket_create, socket_bind,socket_accept,socket_connect,stream_socket_server,stream_socket_accept, stream_socket_client,ftp_connect,ftp_login,ftp_pasv,ftp_get,sys_getloadavg,disk_total_space, disk_free_space,posix_ctermid,posix_get_last_error,posix_getcwd,posix_getegid,posix_geteuid, posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp, posix_getpid,posix_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid, posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid, posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname,fsockopen,pfsockopen   allow_url_include = Off

启用gzip模块优化网页

Nginx   http { : include conf/mime.types; : gzip on; : gzip_min_length 1000; : gzip_buffers 4 8k; : gzip_http_version 1.1; : gzip_types text/plain application/x-javascript text/css text/html application/xml; } 重启nginx IIS6 打开Internet信息服务(IIS)管理器,右击”网站”→“属性”,选择”服务”。在”HTTP压缩”框中选中”压缩应用程序文件”和”压缩静态文件”,按需要设置”临时目录”和”临时目录的最大限制”; 在Internet信息服务(IIS)管理器,右击”Web服务扩展”→“增加一个新的Web服务扩展…“,在”新建Web服务扩展”框中输入扩展 名”HTTPCompression”,添加”要求的文件”为C:\WINDOWS\system32\inetsrv\gzip.dll,其中 Windows系统目录根据您的安装可能有所不同,选中”设置扩展状态为允许”; 使用文本编辑器打开C:\Windows\System32\inetsrv\MetaBase.xml(建议先备份),找到Location =”/LM/W3SVC/Filters/Compression/gzip”,如果需要压缩动态文件,则将 HcDoDynamicCompression设置为”TRUE”,并在HcScriptFileExtensions中增加您要压缩的动态文件后缀名, 如aspx;如果需要压缩静态文件,则将HcDoStaticCompression和HcDoOnDemandCompression设置 为”TRUE”,并在HcFileExtensions中增加您需要压缩的静态文件后缀名,如xml、css 等;HcDynamicCompressionLevel和HcOnDemandCompLevel表示需要的压缩率,数字越小压缩率越低; 编辑完毕后保存MetaBase.xml文件;如果文件无法保存,则可能IIS正在使用该文件。打开”开始”→“管理工具”→“服务”,停止”IIS Admin Service”后,即可保存; 最后,重新启动IIS。 Apache 编辑ht...

关于FORCE_PKG_REGISTER

当你先已用ports安装过某一软件,再次安装同一项时,会出现类似:You may wish to “make deinstall” and install this port again by “make reinstall” to upgrade it properly. If you really wish to overwrite the old port of PORTS資料夾位置 without deleting it first, set the variable “FORCE_PKG_REGISTER” in your environment or the “make install” command line. 的错误。   解决办法:只要在make install 时加上 FORCE_PKG_REGISTER=”yes” 就可以强制安裝

Apache VirtualHost设定

通常在一台Web Server上,會有數個不一樣的網站要執行,這時候各個網站的domain name就必須靠VirtualHost設定 VirtualHost基本設定 #指定主機所有port 80所指定的虛擬主機 NameVirtualHost *:80   <Virtualhost *:80> #DNS ServerName wp.johnsonlu.org   #Web Root Path DocumentRoot /var/www/test   #Alias可以將DocumentRoot底下的路徑對應成特定目錄路徑 Alias /doc/ /var/www/test/doc/   #控制目錄權限 <Directory “/usr/share/doc/”> #Options可以透過+號或-號來控制目錄權限,例如關閉Index目錄 #FollowSymLinks是允許連到DocumentRoot以外的其他目錄、MultiViews是多國語言支援 Options -Indexes FollowSymLinks MultiViews   #AllowOverride是用來設定Override權限。None代表關閉.htaccess;FileInfo則是開啟 AllowOverride None   #Order負責控制Deny和Allow執行順序 Order Deny,Allow #控制要拒絕的連線 Deny from all #控制可以通過的連線 Allow from 127.0.0.0/255.0.0.0 </Directory>   #Log ErrorLog /var/log/error_log </Virtualhost> Alias也可以透過正規表示法設定成pattern,可以參考mod_alias Directory設定可以參考Directory Directive Allow和Deny的部份可以參考mod_access_compat     另外也可以把VirtualHost設定成動態的pattern (需要開啟mod_vhost_alias module) <VirtualHost *:...

Apache压力测试工具 ApacheBench

這是Apache內建的壓力測試工具 指令為(ab or ab2) ab -k -c 10 -n 10 http://xxxx.com/ -k 是代表KeepAlive -c concurrent 代表同時進行壓力測試的數量 -n request number 代表request的數量

Apache mod_deflate(gzip)

在Apache中,可以啟用mod_deflate來壓縮網頁,傳送給client後再由client端解壓縮,可以大大節省頻寬的使用 開啟方法: #先到apache的httpd.conf中把mod_deflate.so註解拿掉(如果預設有引入的話就代表已經有使用deflate壓縮囉) LoadModule deflate_module libexec/apache22/mod_deflate.so #Ubuntu可以使用指令開啟 a2enmod deflate 接著可以在Apache設定檔(httpd.conf)中自訂一些設定 <IfModule mod_deflate.c> #壓縮等級1~9,等級越高壓縮效能越好 DeflateCompressionLevel 9 #設定要壓縮的類型 AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/javascript application/x-httpd-php #自訂Log格式及存放位置 DeflateFilterNote ratio LogFormat ‘”%r” %b (%{ratio}n) “%{User-agent}i”‘ deflate CustomLog /var/log/deflate_log deflate </IfModule> 其他更細部的操作,例如BrowserMatch等等,可以直接參考Apache mod_deflate的說明 設定完成後重新啟動Apache即可,可以透過這個網站測試

FreeBSD防火墙Firewall(ipfw)

先將kernel複製出來 mkdir /usr/local/etc/FreeBSD cd /usr/src/sys/i386/conf cp GENERIC /usr/local/etc/FreeBSD/MYKERNEL ln -s /usr/local/etc/FreeBSD/MYKERNEL vi /usr/local/etc/FreeBSD/MYKERNEL 加入 options IPFIREWALL #firewall options IPFIREWALL_VERBOSE #enable logging to syslogd(8) options IPFIREWALL_FORWARD #packet destination changes options IPFIREWALL_DEFAULT_TO_ACCEPT #allow everything by default cd /usr/src;make kernel 完成後開始設定 vi /etc/rc.conf 加入 #firewall firewall_enable=”YES” firewall_logging=”YES” firewall_script=”/etc/rc.firewall” vi /etc/rc.firewall 將內容全部刪除改為 #!/bin/sh fwcmd=”/sbin/ipfw” Trust_IP1=”127.0.0.1″ #這裡要換成server本身的IP Trust_IP2=”120.119.1.0/24″ #可通過的網段 UnTrust_IP1=”192.83.191.0/24″ Allowed_TCP_In_1=”22,25,53,80,443″ #you want to open port Traceroute=”33433-33499″ Allowed_UDP_Out=”20,21,53,113″ Allowed_UDP_In=”20,21,53,113″ Allowed_UDP_ftp_Out=...

FreeBSD安裝sshguard-ipfw

請先完成ipfw設置 cd /usr/ports/security/sshguard-ipfw;make install clean 在/etc/syslog.conf 中 把 #auth.info;authpriv.info |exec /usr/local/sbin/sshguard 註解去掉 也可以自由設定鎖定時間 例如: auth.info;authpriv.info |exec /usr/local/sbin/sshguard -a 5 -p 7200 -s 3600 (a:失敗多少次 p:被擋多久(秒) s:多少秒忘記攻擊) 最後/etc/rc.d/syslogd restart 接著你可以tail -f /var/log/auth.log,然後用putty連線,密碼請故意打錯四次,就會出現: Jan 26 13:31:05 earth sshguard[40059]: Blocking 210.71.11.116:4 for >420secs: 4 failures over 2 seconds. 解除鎖定: 使用另一個IP登入 ipfw show ipfw delete xxxxx

FreeBSD安装pure-ftpd

cd /usr/ports/ftp/pure-ftpd make install clean(選UTF-8) cd /usr/local/etc cp pure-ftpd.conf.sample pure-ftpd.conf vi /etc/rc.conf 加入 pureftpd_enable=”YES” ftp傳輸檔案時是有特定的port, 如果防火牆有擋port,可以自行設定ftp檔案傳輸的port vi /usr/local/etc/pure-ftpd.conf 將PassivePortRange這行改成 PassivePortRange 65000 65500 啟用ftp /usr/local/etc/rc.d/pure-ftpd start

FreeBSD Samba安装及设定

cd /usr/ports/net/samba34 make install clean (選擇 LDAP、ADS、CUPS、WINBIND、ACL_SUPPORT、SYSLOG、UTMP) vi /etc/rc.conf samba_enable=”YES” vi /usr/local/etc/smb.conf #加入工作群組 workgroup = WORKGROUP #主機名稱 server string = %h Samba Server (%h為主機名稱變數) #設定使用者家目錄 原為: [homes] comment = Homes Directories browseable = no writable = yes 更改為: [homes] comment = Home directory for %u on %h browseable = no writable = yes path = /usr/home/%u/ valid users = %S #設定共享資料夾 [public] comment = %h Shared Public Directory path = /usr/home/samba/public force directory mode = 0777 force create mode = 0777 force group = nobody force user = nobody public = yes writeable = yes read only = no #測試Samba conf中語法有無錯誤 /usr/local/bin/testparm | more mkdir /usr/home/samba mkdir /usr/home/samba/public chmod 777 /usr/home/samba/public #新增Samba帳戶 使用者必須同時設定兩種帳號: FreeBSD 的使用者帳號、 Samba 的使用者帳號 才能正常登入 Samba 伺服器。 smbpasswd -a 帳號 /usr/local/etc/rc.d/samba restart #個別設定資料夾設定 [aaa] comment = aaa path = /home/samba/my2075/aaa valid u...

FreeBSD MySQL忘记密码

今天使用時出現 ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (61) 其實是忘記密碼啦XDD #背景執行mysql安全模式 mysqld_safe -u root –skip-grant-tables & #登入mysql(不用密碼) mysql -u root -p >use mysql >UPDATE user SET password=password(‘這裡輸入你的密碼’) where user=’root’; >FLUSH PRIVILEGES; >exit /usr/local/etc/rc.d/mysql-server restart

一行HTML5语法将浏览器变成编辑器

data:text/html, <html contenteditable>

FreeBSD安裝phpmyadmin

cd /usr/ports/databases/phpmyadmin make install clean cp -r /usr/local/www/phpMyAdmin /usr/local/www/apache22/data/phpmyadmin cd /usr/local/www/apache22/data/phpmyadmin cp config.sample.inc.php config.inc.php chmod 644 config.inc.php

在Debian里面用quota配置磁盘限额

实现磁盘配额限制步骤: 1. 内核里面打开了配额的支持,绝大部分发行版都打开的 2. 以配额方式加载文件系统 3.安装配额软件: 4.配置配额 原/etc/fstab的一项: /dev/hda1 /home ext2 defaults 1 1 做如下修改: /dev/hda1 /home ext2 defaults,usrquota 1 1 如何是对组限制就将usrquota改为grpquota 重新加载文件系统: mount -o remount,usrquota /home 加载内核模块,并让其开机的时候也会自动加载 modprobe quota_v2 echo ‘quota_v2’ >> /etc/modules 我们要在启用配额的分区创建文件并且限制root才能读写 touch /home/aquota.user touch /home/aquota.group chmod 600 /home/aquota.user /home/aquota.group 现在来安装quota软件: apt-get install quota quotatool 如果不想重起机器来打开磁盘配额 quotacheck -vagum 现在到最后一步了,假设我们要对系统里的某个用户skx进行限制配额: quotatool -u skx -bq 200M -l ‘250 Mb’ /home 系统管理员可以用如下命令看到 磁盘配额 repquota /home 如果想把一个用户的限制取消只用把他的限制配额设为0 对了,如果是20G,那就要写20000M,quotatool好像不认 20G的。 收工~~ 其实现在一般情况下也用不到这个磁盘限额。

Linux服务器一键安装包

CentminMod http://centminmod.com/ Nginx Auto Installer – PHP – MySQL http://serversreview.net/nginx-auto-installer-php-mysql TuxLite http://tuxlite.com/ https://github.com/Mins/TuxLite Minimal & Minstall & Server https://github.com/maxexcloo/ TigersWay https://github.com/TigersWay/VPS Debian-Server https://github.com/mikegioia/Debian-Server LNMP-xcache-PHPMyAdmin https://github.com/AhmadShamli/LNMP-xcache-PHPMyAdmin Nginx-Setup-Script https://github.com/mikemansell/Nginx-Setup-Script LNMPA https://github.com/XWay/LNMPA NGinxAutoInstall.sh https://github.com/nicolargo/debianpostinstall VladGh.com-LEMP https://github.com/vladgh/VladGh.com-LEMP/tree/next https://github.com/scott23/VladGh.com-LEMP/tree/update lowendscript https://github.com/jkilgore/lowendscript https://github.com/sotiri/lowendscript https://github.com/ilevkov/lowendscript 小朱的两个 http://www.centos.bz/lnmp/ http://www.centos.bz/lamp/ QLNMP http://qlnmp.forum.openfans.org/ http://code.google.com/p/qlnmp/ Linux + Apach...

wget 同步网站的命令

很方便 wget -mk -np -nH -b http://www.google.com/xxx

debian 6 安装vnc+xfce4 教程

debian6 不得不说,非常好的系统,默认安装的时候,不安装图形,安装一些基本的包后,以后如果想安装图形,远程管理什么的,可以安装xfce这个桌面,非常小,然后把中文安装上,非常爽。安装的步骤如下: apt-get install xfonts-intl-chinese xfonts-wqy ttf-wqy-zenhei ttf-wqy-microhei apt-get install vnc4server xfce4 安装完成以后,配置下vnc,让vnc 开机自动启动,并设置一个vnc的连接密码 终端输入vncpasswd ,提示输入密码即可 远程访问客户端可以用vncviewer ,但在访问前还需修改一个 VNC 的 xstartup 文件,否则没有Xfce图像界面 vim ~/.vnc/xstartup 附我的 xstartup 文件 #!/bin/sh # Uncomment the following two lines for normal desktop: # unset SESSION_MANAGER # exec /etc/X11/xinit/xinitrc [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources xsetroot -solid grey #vncconfig -iconic & #x-terminal-emulator -geometry 80×24+10+10 -ls -title “$VNCDESKTOP Desktop” & #x-window-manager & xfce4-session & 然后创建一个启动脚本 vim /etc/init.d/vncserver #! /bin/sh export USER=”root” export PATH=”/usr/local/bin:/usr/bin:/bin:/usr/bin/X11″ NAME=vncstart start() { su – $USER -c”...

经典哲学

1、二战时巴顿将军了解到很多盟军战士是在跳伞时摔死的,十分恼火,马上赶到降落伞厂家从生产线上抓起一个伞包让负责人现场带伞包从高空跳下,说要不定期抽流水线上伞包让他跳,从此战士们再没因跳伞而阵亡。其实,在中国,地沟油、毒牛奶、追尾列车等等皆可照此办理。 2、 【麦兜定律】 1.永远不要后退,退到最后是无路可退。2.你不尊重我,我尊重你。你还不尊重我,我仍尊重你。你再不尊重我,我就废了你。3.想哭就哭,想笑就笑,不要因为世界虚伪,你也变得虚伪了。4.不开心睡一觉,就让它过去吧。伤心还好,伤胃就不好了。5.感谢那些曾让我伤心难过的日子,我知道快乐已离我不远了。