wget是一个从网络上自动下载文件的自由工具,支持通过HTTP、HTTPS、FTP三个最常见的TCP/IP协议下载,并可以使用HTTP代理。wget名称的由来是“World Wide Web”与“get”的结合。wget一般使用在linux系统上都是现在也在windows上存在。
下载地址:http://www.landui.com/packages/wget.htm
可以下载完整版:
使用方法:
直接安装后在“运行”里运行cmd,然后进入那个wget.exe所在的目录,接着就可以了……
直接输入wget,提示wget –help,按照帮助,输入,显示好多参数,直接定位到-r参数,也就是递归下载。恩,就是这个,马上输入:
wget -r http://www.landui.com:8080/liveMedia/public/doxygen/
剩下的就是它事情了,它会自动在wget.exe的目录下建立一个127.0.0.1:8080 目录,也按照服务器的目录建立子目录。
它的其它一些参数如下(用法)[1]:
用法: wget [选项]… [URL]…
命令的引数使用长项目与短项目相同.
启动:
-V, –version显示Wget的版本并且离开.
-h, –help显示这个说明档.
-b, -background在启动之後跳到背景去.
-e, -execute=COMMAND执行一个`.wgetrc’里面的COMMAND指令.
纪录档与输入的档案:
-o, –output-file=FILE纪录讯息到FILE去.
-a, -append-output=FILE增加讯息到FILE去.
-d, –debug显示除错的输出.
-q, –quiet安静模式(不输入任何讯息).
-v, –verbose冗长模式(这是内定值).
-nv, –non-verbose关闭verboseness,但不是安静模式.
-i, –input-file=FILE从FILE读取URL .
-F, –force-html把输入的档案当作HTML.
下载:
-t, –tries=NUMBER设定重复尝试NUMBER次(0是无限制).
-O –output-document=FILE把文件写到FILE里.
-nc, –no-clobber不破坏已经存在的档案.
-c, –continue重新取得一个已经存在的档案.
–dot-style=STYLE设定取回状况的显示风格.
-N, –timestamping不取回比本地旧的档案.
-S, –server-response显示伺服器回应状况.
–spider不下载任何东西.
-T, –timeout=SECONDS设定读取时超过的时间为SECONDS秒.
-w, –wait=SECONDS在取回档案时等待SECONDS秒.
-Y, –proxy=on/off开启或关闭Proxy.
-Q, –quota=NUMBER设定取回档案的定额限制为NUMBER个.
目录:
-nd –no-directories不建立目录.
-x, –force-directories强制进行目录建立的工作.
-nH, –no-host-directories不建立主机的目录.
-P, –directory-prefix=PREFIX把档案存到PREFIX/…
–cut-dirs=NUMBER忽略NUMBER个远端的目录件.
HTTP选项:
–http-user=USER设http使用者为USER.
–http0passwd=PASS设http使用者的密码为PASS.
-C, –cache=on/off提供/关闭快取伺服器资料(正常情况为提供).
–ignore-length忽略`Content-Length’标头栏位.
–proxy-user=USER设USER为Proxy使用者名称.
–proxy-passwd=PASS设PASS为Proxy密码.
-s, –save-headers储存HTTP标头成为档案.
-U, –user-agent=AGENT使用AGENT取代Wget/VERSION作为识别代号.
FTP选项:
–retr-symlinks取回FTP的象徵连结.
-g, –glob=on/off turn file name globbing on ot off.
–passive-ftp使用”passive”传输模式.
使用递回方式的取回:
-r, –recursive像是吸入web的取回–请小心使用!.
-l, –level=NUMBER递回层次的最大值(0不限制).
–delete-after删除下载完毕的档案.
-k, –convert-links改变没有关连的连结成为有关连.
-m, –mirror开启适合用来映射的选项.
-nr, –dont-remove-listing不要移除`.listing’档.
递回式作业的允许与拒绝选项:
-A, –accept=LIST允许的扩充项目的列表.
-R, –reject=LIST拒绝的扩充项目的列表.
-D, –domains=LIST允许的网域列表.
–exclude-domains=LIST拒绝的网域列表(使用逗号来分隔).
-L, –relative只跟随关联连结前进.
–follow-ftp跟随HTML文件里面的FTP连结.
-H, –span-hosts当开始递回时便到外面的主机.
-I, –include-directories=LIST允许的目录列表.
-X, –exclude-directories=LIST排除的目录列表.
-nh, –no-host-lookup不透过DNS查寻主机.
-np, –no-parent不追朔到起源目录.
[Tree命令作用]
以图形显示驱动器或路径的文件夹结构。很多时候,这是一个非常有用的命令!
[Tree命令格式]
可以在命令行窗口敲tree /?看帮助。
TREE [drive:][path] [/F] [/A]
/F 显示每个文件夹中文件的名称。
/A 使用 ASCII 字符,而不使用扩展字符。
使用/F参数时显示所有目录及目录下的所有文件,省略时,只显示目录,不显示目录下的文件;
选用>PRN参数时,则把所列目录及目录中文件名打印输出
tree c: | more
出现由 tree 命令产生的第一个输出命令提示符窗口,后面跟着 — More — 提示。输出暂停,直到用户按键盘上的任意键为止(Pause除外)。
空格:显示一整页
按下:Ctrl+Break退出
1、把/home目录下面的mydata目录压缩为mydata.zip
zip -r mydata.zip mydata #压缩mydata目录
2、把/home目录下面的mydata.zip解压到mydatabak目录里面
unzip mydata.zip -d mydatabak
3、把/home目录下面的abc文件夹和123.txt压缩成为abc123.zip
zip -r abc123.zip abc 123.txt
4、把/home目录下面的wwwroot.zip直接解压到/home目录里面
unzip wwwroot.zip
5、把/home目录下面的abc12.zip、abc23.zip、abc34.zip同时解压到/home目录里面
unzip abc*.zip
6、查看把/home目录下面的wwwroot.zip里面的内容
unzip -v wwwroot.zip
7、验证/home目录下面的wwwroot.zip是否完整
unzip -t wwwroot.zip
8、把/home目录下面wwwroot.zip里面的所有文件解压到第一级目录
unzip -j wwwroot.zip
主要参数
-c:将解压缩的结果
-l:显示压缩文件内所包含的文件
-p:与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换
-t:检查压缩文件是否正确
-u:与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其它文件解压缩到目录中
-v:执行是时显示详细的信息
-z:仅显示压缩文件的备注文字
-a:对文本文件进行必要的字符转换
-b:不要对文本文件进行字符转换
-C:压缩文件中的文件名称区分大小写
-j:不处理压缩文件中原有的目录路径
-L:将压缩文件中的全部文件名改为小写
-M:将输出结果送到more程序处理
-n:解压缩时不要覆盖原有的文件
-o:不必先询问用户,unzip执行后覆盖原有文件
-P:使用zip的密码选项
-q:执行时不显示任何信息
-s:将文件名中的空白字符转换为底线字符
-V:保留VMS的文件版本信息
-X:解压缩时同时回存文件原来的UID/GID
java在图形处理时调用了本地的图形处理库。在利用Java作图形处理(比如:图片缩放,图片签名,生成报表)时,如果运行在windows上不会出问题。如果将程序移植到Linux/Unix上的时候有可能出现图形不能显示的错误。
提示信息:”Cant connect to X11 window server”这是由于Linux的图形处理需要一个X Server服务器。
解决办法:
1.如果服务器上安装有图形界面,可以通过设置环境变量:DISPALY=127.0.0.1:0.0解决。
2. 如果没有安装图形界面,可以在Java运行时加上参数:-Djava.awt.headless=true。
3. 使用PJA库来代替本地图形处理库。
Tomcat的修改如下:
打开 %Tomcat_home%/bin/catalina.sh 文件在-Djava.io.tmpdir=”$CATALINA_TMPDIR”后,启动Tomcat的脚本中加上:-Djava.awt.headless=true
“$_RUNJAVA” $JAVA_OPTS $CATALINA_OPTS
-Djava.endorsed.dirs=”$JAVA_ENDORSED_DIRS”
-classpath “$CLASSPATH”
-Dcatalina.base=”$CATALINA_BASE”
-Dcatalina.home=”$CATALINA_HOME”
-Djava.io.tmpdir=”$CATALINA_TMPDIR”
-Djava.awt.headless=true
org.apache.catalina.startup.Bootstrap “$@” start
>> “$CATALINA_BASE”/logs/catalina.out 2>&1 &
if [ ! -z “$CATALINA_PID” ]; then
echo $! > $CATALINA_PID fi
fielif [ “$1” = “stop” ] ; then
保存后,重新启动就可以处理图形了。
功能: 复制文件或目录
说明: cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息
参数:
-a 或 –archive 此参数的效果和同时指定”-dpR”参数相同
-b 或 –backup 删除、覆盖目的文件先备份,备份的文件或目录亦建立为符号链接,并指向源文件或目录链接的源文件或目录。假如没有加上这个参数,在复制过程中若遇到符号链接,则会直接复制源文件或目录
-f 或 –force 强行复制文件或目录, 不论目的文件或目录是否已经存在
-i 或 –interactive 覆盖文件之前先询问用户
-l 或 –link 对源文件建立硬链接,而非复制文件
-p 或 –preserve 保留源文件或目录的属性,包括所有者、所属组、权限与时间
-P 或 –parents 保留源文件或目录的路径,此路径可以是绝对路径或相对路径,且目的目录必须已经丰在
-r 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
-R 或 –recursive 递归处理,将指定目录下的文件及子目录一并处理
-s 或 –symbolic-link 对源文件建立符号链接,而非复制文件
-S <备份字尾字符串> 或 –suffix=<备份字尾字符串> 用”-b”参数备份目的文件后,备份文件的字尾会被加上一个备份字符串。默认的备份字尾符串是符号”~”
-u 或 –update 使用这项参数之后,只会在源文件的修改时间(Modification Time)较目的文件更新时,或是名称相互对应的目的文件并不存在,才复制文件
-v 或 –verbose 显示执行过程
-V <备份方式> 或 –version-control=<备份方式> 指定当备份文件时,备份文件名的命名方式,有以下3种:
1.numbered或t, 将使用备份编号,会在字尾加上~1~字符串,其数字编号依次递增
2.simple或never 将使用简单备份,默认的备份字尾字符串是~, 也可通过-S来指定
3.existing或nil将使用当前方式,程序会先检查是否存在着备份编号,若有则采用备份编号,若无则采用简单备份
-x 或 –one-file-system 复制的文件或目录存放的文件系统,必须与cp指令执行时所处的文件系统相同,否则不复制,亦不处理位于其他分区的文件
–help 显示在线帮助
–sparse=<使用时机> 设置保存希疏文件的时机
–version 显示版本
示例:
.复制文件,只有源文件较目的文件的修改时间新时,才复制文件
cp -u -v file1 file2
.将文件file1复制成文件file2
cp file1 file2
.采用交互方式将文件file1复制成文件file2
cp -i file1 file2
.将文件file1复制成file2,因为目的文件已经存在,所以指定使用强制复制的模式
cp -f file1 file2
.将目录dir1复制成目录dir2
cp -R file1 file2
.同时将文件file1、file2、file3与目录dir1复制到dir2
cp -R file1 file2 file3 dir1 dir2
.复制时保留文件属性
cp -p a.txt tmp/
.复制时保留文件的目录结构
cp -P /var/tmp/a.txt https://www.landui.com/temp/
.复制时产生备份文件
cp -b a.txt tmp/
.复制时产生备份文件,尾标 ~1~格式
cp -b -V t a.txt /tmp
.指定备份文件尾标
cp -b -S _bak a.txt /tmp
一些参数
-t 详细选项:
光盘或光盘镜像:iso9660
DOS fat16文件系统:msdos
Windows 9x fat32文件系统:vfat
Windows NT ntfs文件系统:ntfs
Mount Windows文件网络共享:smbfs(需内核支持)推荐cifs
UNIX(LINUX) 文件网络共享:nfs
-o 详细选项:
loop :用来把一个文件当成硬盘分区挂接上系统
ro :采用只读方式挂接设备
rw :采用读写方式挂接设备
iocharset :指定访问文件系统所用字符集,例如iocharset=utf8
remount :重新挂载
使用实例:
挂载windows文件共享:
mount -t smbfs -o username=admin,password= //192.168.1.2/c$ /mnt/samba
mount -t cifs -o username=xxx,password=xxx //IP/sharename /mnt/dirname
挂载Linux文件nfs共享:
mount -t nfs -o rw 192.168.1.2:/usr/www /usr/www
挂载ISO镜像:
mount -o loop -t iso9660 /usr/mydisk.iso /home/ping.bao/cd
挂载USB移动硬盘:
mount -t ntfs /dev/sdc1 /root/usb
挂载CDROM:
mount /dev/cdrom /home/ping.bao/cd
取消挂载:
umount /dev/cdrom /home/ping.bao/cd
单用户模式重新挂载根分区:
mount -o remount,rw /
CentOS7默认的防火墙不是iptables,而是firewalle.
安装iptable iptable-service
#先检查是否安装了iptables
service iptables status
#安装iptables
yum install -y iptables
#升级iptables
yum update iptables
#安装iptables-services
yum install iptables-services
禁用/停止自带的firewalld服务
#停止firewalld服务
systemctl stop firewalld
#禁用firewalld服务
systemctl mask firewalld
设置现有规则
#查看iptables现有规则
iptables -L -n
#先允许所有,不然有可能会杯具
iptables -P INPUT ACCEPT
#清空所有默认规则
iptables -F
#清空所有自定义规则
iptables -X
#所有计数器归0
iptables -Z
#允许来自于lo接口的数据包(本地访问)
iptables -A INPUT -i lo -j ACCEPT
#开放22端口
iptables -A INPUT -p tcp –dport 22 -j ACCEPT
#开放21端口(FTP)
iptables -A INPUT -p tcp –dport 21 -j ACCEPT
#开放80端口(HTTP)
iptables -A INPUT -p tcp –dport 80 -j ACCEPT
#开放443端口(HTTPS)
iptables -A INPUT -p tcp –dport 443 -j ACCEPT
#允许ping
iptables -A INPUT -p icmp –icmp-type 8 -j ACCEPT
#允许接受本机请求之后的返回数据 RELATED,是为FTP设置的
iptables -A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT
#其他入站一律丢弃
iptables -P INPUT DROP
#所有出站一律绿灯
iptables -P OUTPUT ACCEPT
#所有转发一律丢弃
iptables -P FORWARD DROP
其他规则设定
#如果要添加内网ip信任(接受其所有TCP请求)
iptables -A INPUT -p tcp -s 45.96.174.68 -j ACCEPT
#过滤所有非以上规则的请求
iptables -P INPUT DROP
#要封停一个IP,使用下面这条命令:
iptables -I INPUT -s *.*.*.* -j DROP
#要解封一个IP,使用下面这条命令:
iptables -D INPUT -s *.*.*.* -j DROP
保存规则设定
#保存上述规则
service iptables save
开启iptables服务
#注册iptables服务
#相当于以前的chkconfig iptables on
systemctl enable iptables.service
#开启服务
systemctl start iptables.service
#查看状态
systemctl status iptables.service
使用Navicat for MySQl访问远程mysql数据库,出现报错,显示“2003- Cant connect MySQL Server on localhost(10038)“。
导致这个问题的原因是:远程3306端口未对外开放。
解决方法:
在”高级安全Windows防火墙“中的入站规则中将3306端口设置为允许连接就可以解决。
解决Connect to Idle Instance问题
第一步
查看Oracle_SID.
[oracle@linuxserver ~]$ echo $ORACLE_SID
cjdl
这里的SID要和初始化文件spfilecjdl.ora里的一样才行。
[oracle@linuxserver ~]$ cd $ORACLE_HOME
[oracle@linuxserver 11.2.0]$ cd dbs
[oracle@linuxserver dbs]$ ls
hc_cjdl.dat hc_DBUA0.dat init.ora lkCJDL orapwcjdl spfilecjdl.ora
多数情况下,都是因为这里出了问题。
第二步
[oracle@linuxserver dbs]$ export ORACLE_SID=cjdl
一般来讲,export一下,就可以正常连接了。
第三步
[oracle@linuxserver dbs]$ sqlplus / as sysdba
Ok!正常连接。
通常情况下我们是用的都是http的路径,对于https的使用也很少,但是随着https的普及越来越多的域名访问需要用到https的,这个我们就演示怎么设置在我们对一个http的网站进行访问时候自动跳转至https下。
用到的工具及软件:
系统:windows2008R2
软件:IIS7.0,IIS的microsoft URL重写模块2.0
操作步骤:
1、我们需要下载并在IIS中安装microsoft URL重写模块2.0
下载地址:http://www.landui.com/zh-cn/download/details.aspx?id=7435
下载安装后我们重启IIS,再打开后会发现在功能视图中又多出了个URL重写的功能
2、对站点进行域名绑定
我们需要将https和http绑定在需要的站点上
3、进程SSL设置
在要求SSL的选择前取消勾选
4、在URL中新建规则
新建一个空白规则,让http的访问跳转到https上
起一个名字例如HTTP to HTTPS redirect
模式:(.*)
添加条件:{HTTPS} 模式:off 或 ^OFF$
在操作设置中选择重定向:https://{HTTP_HOST}/{R:1}
重定向类型:已找到(302) 或 参阅其它(303)
选择应用就可以了
5、测试
eAccelerator是一个开源php加速器,优化和动态内容缓存,提高了php脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除,下面我来给各位同学介绍PHP 5.2.17 安装 eAccelerator方法本包里有非线程安全与线程安全版本。eAccelerator_ts.dll 是线程安全版本,eAccelerator_nts.dll 是非线程安全版本。该eAccelerator使用最新发布的PHP 5.2.17编译,使用前请确认自己的PHP版本。文件内含Thread safe(线程安全)和Non Thread Safe(非线程安全版本),请根据自己使用的PHP版本选择。
一、相关下载
eAccelerator 0.9.6.1 For PHP5.2.17(DLL)
二、安装方法
1、选择相应版本
根据您的PHP线程安全版本,选择相应文件,并复制到php目录下的子目录ext中,同时改名为php_eaccelerator.dll。
2、设置相应参数
[eaccelerator]
zend_extension_ts=”d:/php5/ext/php_eaccelerator.dll”
eaccelerator.shm_size=”64″
eaccelerator.cache_dir=”d:/php5/tmp”
eaccelerator.enable=”1″
eaccelerator.optimizer=”1″
eaccelerator.check_mtime=”1″
eaccelerator.debug=”0″
eaccelerator.filter=””
eaccelerator.shm_max=”0″
eaccelerator.shm_ttl=”0″
eaccelerator.shm_prune_period=”0″
eaccelerator.shm_only=”0″
eaccelerator.compress=”1″
eaccelerator.compress_level=”9″
eaccelerator.keys = “shm”
eaccelerator.sessions = “shm”
eaccelerator.content = “shm”
请编辑C:windowsphp.ini文件(根据实际情况),复制以上参数到php.ini最底部,并修改以下路径。
zend_extension_ts=”d:/php5/ext/php_eaccelerator.dll” #您的PHP路径
eaccelerator.cache_dir=”d:/php5/tmp” #您的PHP临时文件路径(要有user可读写权限)
3、保存,重启IIS
在CMD中执行:IISRESET,重启IIS,并使用phpinfo查看,如果提示如下图,表示安装成功。
下载安装xcache
wget http://www.landui.com/pub/Releases/1.3.0/xcache-1.3.0.tar.gz
sudo tar -xzvf xcache-1.3.0.tar.gz
cd xcache-1.3.0
sudo /usr/local/php-5.3.3/bin/phpize
sudo https://www.landui.com/configure –with-php-config=/usr/local/php-5.3.3/bin/php-config
sudo make
sudo make install
sudo cat xcache.ini >> /usr/local/php-5.3.3/lib/php.ini [如果权限还不够的话,就切换到root]
配置php.ini
;author:zhxia
[xcache-common]
;; install as zend extension (recommended), normally “$extension_dir/xcache.so”
;zend_extension = /usr/local/lib/php/extensions/non-debug-non-zts-xxx/xcache.so
; zend_extension_ts = /usr/local/lib/php/extensions/non-debug-zts-xxx/xcache.so
;开启下面行也可以
;zend_extension=/usr/local/php-5.3.3/lib/php/extensions/no-debug-non-zts-/xcache.so
;; For windows users, replace xcache.so with php_xcache.dll
;zend_extension_ts = c:/php/extensions/php_xcache.dll
;; or install as extension, make sure your extension_dir setting is correct
;这行开启也可以,均能够添加xcache模块,修改只有记得重启fpm
extension = xcache.so
;; or win32:
; extension = php_xcache.dll
安装环境centOS6.7
APACHE:apache-2.4.4
PHP:5.4.13
1.安装xchache:
# wget http://www.landui.com/pub/Releases/3.0.1/xcache-3.0.1.tar.gz
# tar xf xcache-3.0.1.tar.gz
# cd xcache-3.0.1 #xcache是php的扩展,要使用php命令加载此扩展
# /usr/local/php5/bin/phpize #phpize命令作用是要准备一个php扩展准备编译,所以扩展要先执行编译
#https://www.landui.com/configure –enable-xcache –with-php-config=/usr/local/php5/bin/php-config
#php-config表示能够获取php的配置信息以及编译时的选项信息;
##由于不在默认路径下,xcache要获取php安装时所启用的功能,否则xcache会找不到php的路径
#make
#make install
安装结束时,会出现类似如下行:
Installing shared extensions: /usr/local/php/lib/php5/extensions/no-debug-zts-/
#安装共享扩展模块路径,先把这个路径复制下来,等一下复制到xcache的配置文件中
2 编辑php.ini,整合php和xcache
# cd xcache-3.0.1
# vi xcache.ini
将xcache配置文件下内容添加到PHP配置文件/usr/local/php5/lib/php.ini下
并找到extension这行,修改为
extension =/usr/local/php5/lib/php/extensions/no-debug-zts-/xcache.so
重启服务
service httpd restart
3.添加phpinfo功能,测试页面
添加以下内容info.php到/usr/local/apache2/htdocs/下,测试php模块是否加载.
# vi /usr/local/apache2/htdocs/info.php
—————
<?php
echo phpinfo();
?>
—————
检查80端口是否打开
# lsof -i:80
浏览器输入 http://www.landui.com/info.php
显示有如下测试页面内容,PHP模块即在APACHE下加载成功
请您根据 您的php版本下载 相应的xcache
下载地址是:http://www.landui.com/pub/Releases/
以下的安装事例的环境:
Apache/2.0.55 (Win32) PHP/5.2.3 mysql-5.0.19 Zend Optimizer v3.3.0
需要注意的是:如果你的PHP版本大于等于5.1
那么一定要修改auto_globals_jit改为:auto_globals_jit = Off
1、下载XCache-1.2.1-php-5.2.3-Win32.zip解压
2、把php_xcache.dll文件拷贝到php安装目录的ext目录(本例是拷贝到D:usrlocalphpext 目录内)
3、然后参考XCache解压后Release_Ts文件夹,参考xcache.ini 配置文件
把下面
[xcache-common]
extension = php_xcache.dll
[xcache]
xcache.shm_scheme = “mmap”
xcache.mmap_path = “xcache” //xcache.mmap_path设成非路径即可
xcache.size=64M
xcache.count=1
xcache.slots=8K
xcache.ttl=0
xcache.gc_interval=0
xcache.var_size=0M
xcache.var_count=1
xcache.var_slots=8K
xcache.var_ttl=0
xcache.var_maxttl=0
xcache.var_gc_interval=300
xcache.test=Off
xcache.readonly_protection=Off
添加到php.ini里面 重启apache
写个phpinfo.php
内容为
<?php
phpinfo();
?>
http://域名或ip/phpinfo.php
看看有没有问题,xcache那一段的XCache Support是不是Enable了
如果显示Enable,说明安装成功。
这个基本的安装方法,至于性能设置要根据实际调节。
1、在phpinfo()服务器检测中显示没有加载php_xcache.dll
检查php_xcache.dll的NTFS权限是否正确,需要给网站用户(或者可以用Guests)只读权限。
2、出现php内存错误
使用了extension调用php_xcache.dll,请尝试使用zend_extension_ts。
3、打开网页没有响应,出现错误 Fatal error: [Zend Optimizer] Zend Optimizer * is incompatible with XCache 1.2.2
这是因为安装了Zend导致,解决方法很简单,把调用php_xcache.dll的zend_extension_ts提到调用zend的前面。如:
zend_extension_manager.optimizer_ts=”C:Program FilesendendOptimizer-3.3.0libOptimizer-3.3.0″ Navicat for Premium 9.0.2激活
zend_extension_ts=”C:phpextphp_xcache.dll”
zend_extension_ts=”C:Program FilesendendOptimizer-3.3.0libendExtensionManager.dll”
XCache 是一个又快又稳定的 PHP opcode 缓存器. 经过良好的测试?在大流量/高负载的生产机器上稳定运行. 经过(在 linux 上)测试并支持所有现行 PHP 分支的最新发布版本, 如 PHP_4_3 PHP_4_4 PHP_5_0 PHP_5_1 PHP_5_2 HEAD(6.x), 并支持线程安全/Windows. 与同类 opcode 缓存器相比更胜一筹, 比如能够快速跟进 PHP 版本.
安装过程其实很简单主要是在XCache版本的选择方面需要点时间。
环境:
系统:windows2008
PHP版本:PHP5.217星外的一键安装包
XCache版本:XCache-3.2.0-php-5.2.17-Win32-VC6-x86
XCache下载地址?http://www.landui.com/pub/Releases/3.2.0/
操作步骤:
1、将下载好的XCache-3.2.0-php-5.2.17-Win32-VC6-x86压缩包解压,将文件中的php_xcache.dll复制到我们的php文件中的ext文件夹中(例如:c:PHPext)。因为我们这里使用的PHP一键安装包所以我们只需要设置XCache的设置就可以了。其他php的设置默认是设置好的了。
2、打开刚刚解压包中的xcache-zh-gb2312.ini文件(提示:xcache.ini是英文配置文件,xcache-zh-gb2312.ini则是中文的提示的配置文件),然后根据文中的提示进行设置然后并且将内容复制到对应的PHP.ini文件中让PHP进行调动。通常可以使用默认设置
复制到PHP.INI中的底部就可以了
[xcache-common]
extension = php_xcache.dll
[xcache.admin]
xcache.admin.enable_auth = Off
xcache.admin.user = “123”
xcache.admin.pass = “”
[xcache]
xcache.shm_scheme = “mmap”
xcache.size = 64M
xcache.count = 4
xcache.slots = 64K
xcache.ttl = 1800
xcache.gc_interval = 1800
xcache.var_size = 8M
xcache.var_count = 4
xcache.var_slots = 64K
xcache.var_ttl = 0
xcache.var_maxttl = 0
xcache.var_gc_interval = 300
xcache.test = Off
xcache.readonly_protection = Off
xcache.mmap_path = “xcache”
xcache.coredump_directory = “”
xcache.cacher = On
xcache.stat = Off
xcache.optimizer = Off
[xcache.coverager]
xcache.coverager = Off
xcache.coveragedump_directory = “”
3、加载测试,我们在服务?网站中新建一个phpinfo.php的文件,内容输入
<?php phpinfo();?>
然后在浏览器进行查看
出现这个就加载上了。
提示如果版本不对一般会出现500的加载错误提示。
XCache 是一个又快又稳定的 PHP opcode 缓存器. 经过良好的测试?在大流量/高负载的生产机器上稳定运行. 经过(在 linux 上)测试并支持所有现行 PHP 分支的最新发布版本, 如 PHP_4_3 PHP_4_4 PHP_5_0 PHP_5_1 PHP_5_2 HEAD(6.x), 并支持线程安全/Windows. 与同类 opcode 缓存器相比更胜一筹, 比如能够快速跟进 PHP 版本.
环境:
windows2008+IIS7.0+PHP5.217+XCache3.2.0
操作:
我们如果在已经加载成功XCache中只需要官方网站中下载对应版本的压缩包,解压压缩包中的htdocs文件夹打网站目录中进行访问就可以进入后台了。
解压到网站目录下如我们这里使用的123网站目录中
在通过域名访问到目录下
相关参数:
php安装目录:/usr/local/php
php.ini配置文件路径:/usr/local/php/etc/php.ini
Nginx?装目录:/usr/local/nginx
Nginx网站根目录:/usr/local/nginx/html
操作步骤
1、安装xcache
#cd /usr/local/src #进入软件包存放目录
#wget http://www.landui.com/pub/Releases/3.2.0/xcache-3.2.0.tar.gz #下载最新版本xcache3.20
tar zxvf xcache-3.2.0.tar.gz #解压
cd xcache-3.2.0 #进入安装目录
/usr/local/php/bin/phpize #用phpize生成configure配置文件
https://www.landui.com/configure –enable-xcache–enable-xcache-coverager –enable-xcache-optimizer –with-php-config=/usr/local/php/bin/php-config #配置
make #编译
make install #安装
安装完成之后,出现下面的界面,记住以下路径,后面会用到。
/usr/local/php/lib/php/extensions/no-debug-non-zts-/ #xcache模块路径
2、创建xcache缓存文件
touch /tmp/xcache #创建文件
chmod 777 /tmp/xcache #设置权限
3、创建xcache管理员密码为
echo -n “” | md5sum #记住类似下面一行代码(md5加密之后的密码),后面会用到
e10adc3949ba59abbe56e057f20f883e
4、拷贝xcache后台管理程序到网站根目录
cp -r /usr/local/src/xcache-3.2.0/htdocs /usr/local/nginx/html/xcache
chown www.landui.com -R /usr/local/nginx/html/xcache #设置xcache目录和网站目录权限相同
5、配置php支持xcache
vi /usr/local/php/etc/php.ini #编辑配置文件,在最后一行添加以下内容
[xcache-common]
extension = xcache.so
[xcache.admin]
xcache.admin.enable_auth = On
xcache.admin.user = “xcache” //里是登陆用户
xcache.admin.pass = “e10adc3949ba59abbe56e057f20f883e” //这里就是登录密码
[xcache]
xcache.shm_scheme =”mmap”
xcache.size=60M
xcache.count =1
xcache.slots =8K
xcache.ttl=0
xcache.gc_interval =0
xcache.var_size=64M
xcache.var_count =1
xcache.var_slots =8K
xcache.var_ttl=0
xcache.var_maxttl=0
xcache.var_gc_interval =300
xcache.test =Off
xcache.readonly_protection = On
xcache.mmap_path =”/tmp/xcache”
xcache.coredump_directory =””
xcache.cacher =On
xcache.stat=On
xcache.optimizer =Off
[xcache.coverager]
xcache.coverager =On
xcache.coveragedump_directory =””
:wq! #保存退出
6、测试
service php-fpm restart #重启php-fpm
service nginx restart #重启nginx
浏览器打开网站根目录下面的xcache
输入用户名xcache 密码
APC,?称是Alternative PHP Cache,官方翻译叫”可选PHP缓存”.它为我们提供了缓存和优化PHP的中间代码的框架。 APC的缓存分两部分:系统缓存和用户数据缓存。
第一步:下载php_apc.dll 在/pecl.php.net/package/apc 要与php版本对应 将php_apc.dll放入你的ext目录
第二步:让php.ini支持apc扩展模块。 然后打开php.ini 加入:
extension=php_apc.dll
apc.rfc1867 = on
apc.max_file_size = 100M
upload_max_filesize = 100M
post_max_size = 100M
参数可以自由更改,根据情况改变
第三步:检查是否支持PHP APC apc_store apc_fetch PHP APC 配置参数 把相关的配置放在一起解释。
apc.enabled=1 apc.enabled默认值是1,你可设成0禁用APC.如果你设置为0的时候,同样把extension=apc.so也注释掉(这样可以节约内存资源)。一旦启用了APC功能,则会缓存Opcodes到共享内存。
apc.shm_segments = 1
总结 1,使用Spinlocks锁机制,能够达到最佳性能。
2,APC提供了apc.php,用于监控与管理APC缓存。不要忘记修改管理员名和密码
3,APC默认通过mmap匿名映射创建共享内存,缓存对象都存放在这块”大型”的内存空间。由APC自行管理该共享内存
4,我们需要通过统计调整apc.shm_size、apc.num_files_hints、apc.user_entries_hint的值。直到最佳
5,好吧,我承认apc.stat = 0 可以?得更佳的性能。要我做什么都可以接受。
6,PHP预定义常量,可以使用apc_define_constants()函数。不过据APC开发者介绍说pecl hidef性能更佳,抛异define吧,它是低效的。
7,函数apc_store(),对于系统设置等PHP变量,生命周期是整个应用(从httpd守护进程直到httpd守护进程关闭),使用APC比Memcached会更好。必竟不要经过网络传输协议tcp.
8,APC不适于通过函数apc_store()缓存频繁变更的用户数据,会出现一些奇异现象。
织梦(DEDECMS)登录后台后,左边栏目列表没有任何反应,甚至导致整个浏览器崩溃,那么是什么原因导致这样的恶果呢
解决织梦(DEDECMS)登录后台假死,半天没反应”问题,并透彻分析导致问题的原因所在。
原因分析
经 常登录后台的站长可能会发现,当访问织梦后台首页的时候,它会检查网站是否有更新补丁、程序目录安全设置等。而很多服务器都禁用了对自身以外的网络访问, 因此织梦在检查更新的时候,相当于是在服务器上访问自身之外的网络,并且织梦的程序并没有限制更新检查最大时间,导致浏览器一直处于等待状态。
解决方法
1、将网站后台(默认dede)目录下 templets/index_body.htm 中的以下代码删除掉。
<script type=”text/javascript”>function showMore(){
$(“#allInfo”).toggle();
$(“#allInfoTD”).toggle();}
$(function(){
$.get(“index_testenv.php”,function(data){
if(data !== “)
{ $(“#__testEvn”).html(data);
} })})
</script>
2、覆盖替换文件,即可解决问题。
functions.php 有什么用
functions.php 是 WordPress 预留的功能函数文件,专门用于添?各种自定义函数代码。现在的WordPress主题的功能越来越强大了,一般都自带了 functions.php 这个文件(通常在主题根目录)。
php中的注释
注释,就是专门用来对代码进行补充说明的文本,一般分为单行注释和多行注释,单行注释使用两个斜杠 // ,多行注释使用 /* */,示例:
1 2 3 4 5 6 7 8 9 10 11
<?php/ * 这是多行注释 * 注释2行 */function hello_world() { // 单行注释 // 再注释一行 echo "<p>Hello World!</p>";}?>
php代码应该添加到 <?php 和 ?> 之间
打开 functions.php 文件,你会发现,文件开头一般都是 <?php ,表明这个文件是遵循php代码规范的,你需要将函数代码添加到它的里面,比如:
1 2 3 4 5 6 7 8 9
<?php//开始php语法 function hello_world() { echo "<p>Hello World!</p>";} //结束php语法?>
避免 <?php 和 ?> 多重嵌套
在 <?php 和 ?> 之间,不要再添加 <?php 和 ?>,如下面的例子就是错误的:
1 2 3 4 5 6 7 8 9 10
<?php//开始php语法 <?php //错误:嵌套啦 function hello_world() { echo "<p>Hello World!</p>";} ?>
可以看到,第一个 <?php 没有结束,又嵌套了一个 <?php ,这样的后果就是导致部分 php 代码失效,严重的可能会导致网站崩溃。
不要在 <?php 和 ?> 之间直接添加其他语种代码
<?php 和 ?> 之间的代码应该符合php语言规范,你不可以直接在他们之间直接添加其他语种代码,比如以下几种错误类型:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
<?php //错误1:直接添加文本Hello World! //错误2:直接添加html代码<div><p>Hello World!</p></div> //错误3:直接添加js代码<script type="text/javascript"> $(document).ready(function() { $("a.anchorLink").anchorAnimate() });</script> //错误4:直接添加css代码<style type="text/css" media="screen"> .textComment{ display: inline; }</style> ?>
可能有些朋友会说,为什么我看到有些人可以添加html代码?比如下面代码的第 5 行:
1 2 3 4 5 6 7 8
<?phpfunction hello_world() { echo "<p>Hello World!</p>";?> <div><p>Hello World!</p></div><?php}?>
其实这是php和html混排,Html代码并没有直接添加在 <?php 和 ?> 之间,你可以看到 第 4 行结束php语法,第 6 行重新开始 php语法,这种写法是合法的。
注意字符转义
网络上很多代码由?没有使用代码高亮插件,可能会导致代码中的某些字符发生转义,或其他错误。比如:
半角符号变成全角符号:引号、逗号、句号、冒号、括号、分号等
常见的转义:< 变成 < ,> 变成 > ,& 变成 & 等
注意php文件的编码
WordPress 是使用 utf-8 格式编码的php程序,utf-8编码又分为 含BOM 和 无BOM 两种,由于我们很可能在 php 文件中添加了中文,所以建议保存 functions.php 等php文件为 Utf-8 无 BOM 格式。否则,很可能会出现 网站空白、布局错乱、出现异常文字 等问题。
使用专业的代码编辑工具
强烈建议大家使用专业一点的代码编辑工具,比如 Notepad++、Sublime Text、EditPlus、DreamWeaver等,使用这类工具的好处:支持代码高亮、代码纠错提示、快捷插入代码片段、支持选择编码类型等等。
特别提示:不要使用微软自带的 txt记事本编辑器 来编辑 php 文件!!很可能会导致代码错误、编码错误等问题!!很多 FTP软件默?也是调用 txt记事本编辑器的 ,需要注意。
最后,建议大家学习一下 php编程入门,至少简单了解一下基本的语句用法,比如 if、echo 等。
操作步骤:
1、下载安装
wget pecl.php.net/get/APC-3.1.8.tgz
tar -zxvf APC-3.1.8.tgz cd APC-3.1.8
/usr/local/php/bin/phpize
https://www.landui.com/configure –enable-apc –enable-mmap –enable-apc-spinlocks –disable-apc-pthreadmutex –with-php-config=/usr/local/php/bin/php-config
make
sudo make install
2、在/usr/local/php/etc/php.ini 加入
extension = “apc.so” ;
;APC setting
apc.enabled = 1
apc.shm_segments = 1
apc.shm_size = 64M
apc.optimization = 1
apc.num_files_hint = 0
apc.ttl = 0
apc.gc_ttl = 3600
apc.cache_by_default = on
重启apache 或者 /usr/local/php/sbin/php-fpm restart
使用国外服务器的朋友可能会遇到文件传输慢的问题,我这边使用onedrive完美的解决了这个问题,先在本地
把我们需要上传的软件,或者网站程序上载到onedrive,前提是您需要申请一个mircosoft的账号了哦,国内的
上载速度还行,然后我们在服务器上安装onedrive,把我们事先上传的程序下载下载发现下载速度是相当的快。
下图为我本地上传的程序,需要注意的是我们需要选择同步的文件夹
注:这种方法对windows server 03 不适用哦,应用微软停止支持了
在phpcms-V9的后台中我们能发现其中的phpsso使用的数据库调用配置文件和phpcms的不是同一个文件。
修改下phpsso_servercachesconfigsdatabase.php文件中的配置即可
1):使用下载的msi程序直接安装。
2):将 JMail.dll 复制到您的服务器上并运行 regsvr32 jmail.dll(例如在运行里输入:regsvr32 “C:ProgramFilesDimacw3JMailjmail.dll”)。在安装 JMail 之前,原有任何版本的 JMail 都必须先卸载掉。要运行安装程序。您还必须具有服务器的超级管理员的权限。
安装完成后可以用ASP探针进行查看。
硬盘分区有三种,主分区、扩展分区、逻辑分区。
【1】主分区
主分区是硬盘的启动分区,它是独立的,也是硬盘的第一个分区,正常的话就是C盘。主分区也可成为“引导分区”,
会被操作系统和主板认定为这个硬盘的第一个分区。
【2】扩展分区
除去主分区所占用的容量以外,剩下的容量被认定为扩展分区。通俗的讲就是主分区是硬盘的主人,而扩展分区是这个硬盘上的仆人,主分区和扩展分区为主从关系。
【3】逻辑分区
扩展分区是不能直接用的,它是以逻辑分区的方式来使用的,所以说扩展分区可分成若干逻辑分区。他们的关系是包含的关系,所有的逻辑分区都是扩展分区的一部分。就相当于在仆人中(扩展分区上)进行细分类,分成接电话的( D盘)、扫地的(E盘)、做饭的(F盘)等等。
逻辑分区是硬盘上一块连续的区域,不同之处在于,每个主分区只能分成一个驱动器,每个主分区都有各自独立的引导块。一个硬盘上最多可以有4个主分区,而扩展分区上可以划分出多个逻辑驱动器。这些逻辑驱动器没有独立的引 导块,不能设定为启动区。
【4】MBR模式
即主引导记录。把它和分区联系起来的时候,就会代表一种分区的制式。由于硬盘的主引导记录中仅仅为分区表保留了64个字节的存储空间,而每个分区的?数占据16个字节,故主分区总计只能存储4个分区的数据。也就是说,一块物理硬盘只能划分为4个主分区磁盘。并且MBR最大仅支持2TB的硬盘,在现在这个连4T都不稀奇的时代,MBR出场的机会恐怕会越来越少(GPT模式)。
【5】相关说明
在MBR模式下,一个硬盘主分区至少有1个,最多4个,扩展分区可以没有,最多1个。且主分区+扩展分区总共不能超过4个(因为扩展分区也占用了一个引导块)。逻辑分区可以有若干个。而在GPT模式下则至少可以有128个主分区。
硬盘的容量 = 主分区的容量 + 扩展分区的容量
扩展分区的容量 = 各个逻辑分区的容量之和
激活的主分区会成为“系统分区”,系统分区包含硬件相关文件和 Boot 文件夹,通过这个文件夹计算机可以获取启动 Windows 的位置。默认情况下,如果在未分区的硬盘驱动器上全新安装 Windows 7,则将创建单独的系统分区。
分区大小为 100 MB(也是主分区类型)。
启动分区是包含 Windows 操作系统文件的分区。例如,如果有一台多重引导计算机,在一个卷上包含 Windows
Vista,在另一个卷上包含 Windows 7,则认为这两个卷都是启动分区。
系统分区和启动分区是硬盘上的分区(或?)的名称,Windows 在启动时将使用该硬盘。系统分区实际上包含的是用于启动 Windows 7 的文件,而启动分区包含的则是系统文件。
可以通过分区助手对硬盘的主分区与逻辑分区进行修改调整,如主分区转成逻辑分区等、分区合并、切割等。
下面我说下centos,一个网卡配置多个ip的步骤
第一步:连接服务器,查看正在使用的网卡
第二步: 进入 /etc/sysconfig/network-scripts 文件夹找到使用的网卡,eth1的配置文件ifcfg-eth1,复制其中内容
第三步:在同一文件夹中,新建 ifcfg-eth1:0 ,粘贴刚才文件的内容,修改ip为所配ip和更改E=eth1:0,同理,如果
想要多个ip,依次新建即可,比如我这里再加一个ip,我可以再新建一个配置文件,ifcfg-eth1:1
第四步:重启一下网卡服务,命令为,service network restart
第五步:测试一下,如下图,我的两个ip都配置成功了
当出现在唯一密钥属性“value”设置为“index.php”时,无法添加类型为“add”的?复集合项
如下图?误如何解决
解决的办法是修改把web.config文件改为:
<?xml version=”1.0″ encoding=”UTF-8″?>
<configuration>
<system.webServer>
<defaultDocument>
<files>
<clear />
<add value=”default.pgp” />
<add value=”main.php” />
<add value=”index.aspx” />
<add value=”index.asp” />
<add value=”index.php” />
</files>
</defaultDocument>
<handlers>
<remove name=”php-5.5.16″ />
</handlers>
</system.webServer>
</configuration>
前言
经常要查看进程的信息,包括进程的是否已经消亡,通过pgrep来获得正在被调度的进程的相关信息。pgrep通过匹配其程序名,找到匹配的进程
重要选项
-l 同时显示进程名和PID
-o 当匹配多个进程时,显示进程号最小的那个
-n 当匹配多个进程时,显示进程号最大的那个
注:进程号越大,并不一定意味着进程的启动时间越晚
使用说明
查看指定名称的进程信息
默认只显示PID
1: [root@master ~]# pgrep ssh
2: 3686
3: 7907
4: 8815
5: 12874
同时显示PID和ProcessName : –l
1: [root@master ~]# pgrep -l sshd
2: 3686 sshd
3: 7907 sshd
4: 8815 sshd
5: 12874 sshd
-o 当匹配多个进程时,显示进程号最小的那个
1: [root@master ~]# pgrep -l sshd
2: 3686 sshd
3: 7907 sshd
4: 8815 sshd
5: 12874 sshd
6: [root@master ~]# pgrep -l -o sshd
7: 3686 sshd
-n 当匹配多个进程时,显示进程号最大的那个
1: [root@master ~]# pgrep -l -n sshd
2: 12874 sshd
特别说明
1)pgrep相当于 ps –eo pid,cmd | awk ‘{print $1,$2}’ | grep KeyWord
1: [root@master ~]# ps -eo pid,cmd | awk ‘{print $1,$2}’ | grep init
2: 1 init
3: [root@master ~]# pgrep init
4: 1
2)如1),pgrep查找的是程序名,不包括其参数
如下,参数里包括要查找的参数,而程序名中不包括,所有没查找到。
1: [root@master ~]# ps axu | grep name
2: root 13298 0.0 0.3 5436 1000 pts/4 S 05:52 0:00 sh name.sh
3: root 13313 0.0 0.2 4876 672 pts/4 R+ 05:53 0:00 grep name
4: [root@master ~]# pgrep name
5: [root@master ~]#
总结
pgrep命令用来查找进程的信息,通常会和kill命令来连用,在指定条件下kill问题进程。
安装完lnmp1.3,下面是添加虚拟主机的步骤,输入命令 lnmp vhost add ,它会一直
提示你输入域名,网站位置,数据库名,数据库密码。
输入域名
输入虚拟机管理员邮箱,输入myslq,root用户密码,创建数据库
最后,系统会把我们新建的有关该虚拟机的账号信息列出来
添加解析,访问测试,下面这个页面是我自己在 /home/wwwroot/www.landui.com/ 目录下新建了一个index.html文件的测试结果
第一步:我们安装一下pureftpd,ftp管理工具,进入lnmp1.3软件的解压目录,输入 https://www.landui.com/pureftpd.sh 开始安装
第二步:任意按一个键,开始装,一直到他安装完
第三步:上面提示可以使用 lnmp ftp add 来新建一个ftp账号,我们试一下,为刚才我新建的虚拟机创建一个
ftp,我们需要依次输入 ftp账号 ftp密码 ftp绝对目录 ,发现创建成功了
第四步:最后,连接测试下,通过了,下面这个index.html就是我刚才新建的文件啦
总的来说,新建虚拟主机和ftp的操作都是比较简单的。你也试一下吧
今天的文章
Navicat for Premium 9.0.2激活(备案咨询服务时间:09:00-18:00(工作日))分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/108777.html