运维部落

香港vps促销1G99元 点击购买 美国vps促销512M59元 点击购买 日本vps促销1G100元 点击购买

在命令行中使用sendmail 发送邮件

2013年10月4日 没有评论

在命令行中使用sendmail命令可以很好的测试是否服务器能正常发送邮件。

1
2
3
4
5
6
7
8
9
10
sendmail -t <<EOF
From: Mail testing <vps12com.test@gmail.com>            //从哪里发出
To: vps12com.test@gmail.com                                       //发给谁
Cc: vps12com.another@gmail.com                                     //抄送给谁
Bcc: vps12com.test.another@gmail.com                                   //暗送给谁
Subject: 邮件测试                                                  //标题
———————————-                                        //内容
测试邮件内容
———————————
EOF

注:-t 这个参数是一定要加的,否则发送不出去。

Apache配置文件http.conf中文版

2013年10月3日 没有评论

### 此份配置同时适用于Windows(开发环境)和Linux(产品环境),依靠MPM的不同进行区分

##########################################################################################
#### 第一部分 全局配置 [这些指令的作用域含有"server config"但不含"virtual host"] #####
##########################################################################################

#####################################################################
##### MPM 指令(所有MPM指令都仅能用于全局配置) #####

##### prefork 与 mpm_winnt 的公共指令

#内核转储目录(Linux上Apache以root身份启动并切换至其他用户,再忽略该指令可以禁止内核转储)
#CoreDumpDirectory /share/empty

#在所有IP上监听80端口的HTTP协议
Listen 80 http

#半链接队列的最大长度,不能设的太大,而应当通过启用SYN-Cookie抵御SYN洪水。
ListenBacklog 255

#主内存分配程序在未调用free()的情况下允许持有的最大自由内存数量(默认”0″表示无限制)
MaxMemFree 0

#将每个子进程在其生存期内允许伺服的最大请求数量设为有限值,可以防止(偶然的)内存泄漏无限进行,有助于当服务器负载减轻的时候减少活动进程的数量
MaxRequestsPerChild 10000

#记录父进程(监控进程)PID的文件

PidFile log/httpd.pid

PidFile /var/run/httpd.pid

#TCP接收缓冲区大小(相当于8帧,如果不用http上传可减小到4帧)
ReceiveBufferSize 11840
#TCP发送缓冲区大小(相当于8帧,一般比最常用页面压缩后的平均尺寸稍大)
SendBufferSize 11840

#父进程和子进程之间通信使用的计分板,建议不要设置以首选在匿名共享内存中建立
#ScoreBoardFile /tmp/httpd_status

##### mpm_winnt 特有指令

#每个子进程可配置的线程数上限,应当和ThreadsPerChild可能达到的最大值保持一致
ThreadLimit 5
#每个子进程建立的线程数(必须小于等于ThreadLimit)
ThreadsPerChild 5

#处理客户端连接的线程使用的栈尺寸(65536字节),注释掉以后将使用操作系统默认值
#ThreadStackSize 65536

#仅在其他软件干扰AcceptEx()操作时才使用这个
#Win32DisableAcceptEx

##### prefork 特有指令

#串行化多个子进程在多个socket上accept()请求的方法(仅在使用了多个Listen指令时候才有意义)
#建议在 Linux 2.6 内核并且 Glibc 中包含NPTL时使用posixsem选项
#当然,为了得到最佳性能,最好就根本不使用多个Listen语句。
AcceptMutex posixsem
#当AcceptMutex指令的值是fcntl或flock的时候,Apache使用的锁文件的位置(最好放在TMPFS中)
#其他用户可以通过建立一个同名文件来阻止服务器启动,以造成拒绝服务攻击
LockFile /tmp/httpd_accept.lock

#子进程崩溃以后进行异常处理的钩子程序
EnableExceptionHook Off

#优雅停止服务器的超时秒数(5分钟)
GracefulShutDownTimeout 300

#子进程运行时的组
Group www
#子进程运行时的用户
User httpd

#允许同时伺服的最大接入请求数量(用于应对潜在的请求高峰)
#建议设为与postgresql的max_connections值相等(假定每个接入请求平均使用一个数据库链接)
MaxClients 1000
#服务器允许配置的进程数上限(保持和MaxClient相等)
ServerLimit 1000
#服务器启动时建立的子进程数
StartServers 30
#空闲子进程的最大数量(用于应对潜在的请求高峰)
MaxSpareServers 30
#空闲子进程的最小数量
MinSpareServers 15

#####################################################################
##### mod_so指令(一共只有两条Load..指令,且仅能用于全局配置) #####

#由于Linux已将下列模块静态编译进了httpd,因此不需要动态加载(PHP除外)
#特别提醒:Windows加载了mod_info/mod_status/mod_bw而Linux没有加载。

#基于文件的摘要认证和基于用户的授权以及访问控制
LoadModule auth_digest_module bin/mod_auth_digest.so
LoadModule authn_default_module bin/mod_authn_default.so
LoadModule authn_file_module bin/mod_authn_file.so
LoadModule authz_default_module bin/mod_authz_default.so
LoadModule authz_user_module bin/mod_authz_user.so
LoadModule authz_host_module bin/mod_authz_host.so

#对输出内容(一般是文本)进行压缩
LoadFile bin/zlib1.dll
LoadModule deflate_module bin/mod_deflate.so

#指定目录索引文件以及为目录提供”尾斜杠”重定向(仅供phppgadmin使用)
LoadModule dir_module bin/mod_dir.so

#环境变量控制
LoadModule env_module bin/mod_env.so
LoadModule setenvif_module bin/mod_setenvif.so

#通过配置文件控制”Expires:”和”Cache-Control:”头内容
LoadModule expires_module bin/mod_expires.so

#记录日志和定制日志格式
LoadModule log_config_module bin/mod_log_config.so

# MIME模块(PHP依赖于此模块)
LoadModule mime_module bin/mod_mime.so

#实时重写URL请求
LoadModule rewrite_module bin/mod_rewrite.so

#生成Apache配置情况的Web页面
LoadModule info_module bin/mod_info.so
#生成描述服务器状态的Web页面
LoadModule status_module bin/mod_status.so
#限制客户端带宽(用于模拟低速internet环境)[Http://apache.ivn.cl]
#LoadModule bw_module bin/mod_bw.so

##### 添加PHP5支持

LoadFile php/php5ts.dll
LoadModule php5_module php/php5apache2_2.dll
PHPINIDir php

LoadModule php5_module /lib/httpd/libphp5.so
PHPINIDir /etc/httpd

AddType application/x-httpd-php .php .htm

#####################################################################
##### 仅能够用于全局配置的核心(Core)指令 #####

#根据协议类型对监听Socket进行优化
#AcceptFilter http data
#AcceptFilter https data

#限制客户端HTTP请求头域的数量
LimitRequestFields 20
#限制客户端HTTP请求头的字节数
LimitRequestFieldSize 3000
#限制客户端HTTP请求行的字节数
LimitRequestLine 1020

#为虚拟主机在所有IP地址上监听80
NameVirtualHost *:80

#服务器根目录(必须是绝对路径),配置文件中的其它相对路径都将基于此目录

ServerRoot /GreenAPP/Apache

ServerRoot /share/empty

#”Server:”应答头(Prod最少,Full最多)
ServerTokens Prod

#服务器超时
TimeOut 15

#禁止处理TRACE请求
TraceEnable off

#####################################################################
##### 仅能够用于全局配置的动态加载模块指令 #####

# mime.types文件的位置(mod_mime)

TypesConfig conf/mime.types

TypesConfig /etc/httpd/mime.types

#检查服务器发送的 nonce 计数(尚未实现)(mod_auth_digest)
#AuthDigestNcCheck On

#为了跟踪客户端而分配的共享内存字节数(mod_auth_digest),每链接需要128字节。
AuthDigestShmemSize 25600

#禁止在内存中缓冲日志(mod_log_config)
BufferedLogs Off

#为了和RewriteMap*程序*通讯而使用的同步锁文件的名称(mod_rewrite)
#RewriteLock file-path

#为每个请求记录扩展的状态信息
ExtendedStatus On

################################################################################################
#### 第二部分 主服务器配置[这些指令的作用域含同时含有"server config"和"virtual host"] #####
################################################################################################
## 本配置文件将所有主机都当作虚拟主机,并不存在真正的”主服务器”,因此这部分配置只是所有虚拟主机的默认设置而已 ##

#####################################################################
##### 适用于主服务器配置的核心(Core)指令 #####

#### 虚拟主机必须重新设定的指令

#文档树的根目录(没有真正的主服务器,因此不设置此值)(不能包含结尾斜杠)
#DocumentRoot directory-path
#当没有指定ServerName时,服务器会尝试对IP地址进行反向查询来推断主机名。
#所以,必须胡乱设置一个默认的主服务器主机名
ServerName xx.xx.xx.xx

#### 目录相关

#分布式配置文件的名字
AccessFileName .htaccess
#目录仅可以使用符号链接的特性
Options FollowSymLinks

#### 应答头相关

#当应答内容是text/plain或text/html时在HTTP应答头中加入的默认字符集
AddDefaultCharset utf-8
#无法由其他方法确定内容类型时,发送的默认MIME内容类型
DefaultType application/octet-stream
#禁止生成Content-MD5应答头
ContentDigest Off
#用以创建ETag应答头的文件的属性
FileETag All

#### 貌似安全相关

#仅当一个请求映射到一个真实存在的路径时才会被接受
AcceptPathInfo Off
#禁止URL中使用经过编码的路径分割符
AllowEncodedSlashes Off

#指定内部重定向和嵌套子请求的最大数量(至少是5)
LimitInternalRecursion 10
#限制客户端发送的HTTP请求体的最大字节长度(1.2M)
LimitRequestBody 1300000
#限制基于XML的请求体的最大字节长度(1.2M)
LimitXMLRequestBody 1300000

#限制Apache子进程派生的进程占用CPU的最大秒数
RLimitCPU 1 1
#限制由Apache子进程派生的进程占用的最大内存字节数
RLimitMEM 1 1
#限制由Apache子进程派生的进程所派生的进程数目
RLimitNPROC 0 1

#禁止生成服务器端生成文档的页脚
ServerSignature Off

#### 性能相关

#在递送中使用内存映射来读取文件(某些情况下需要禁用)
EnableMMAP On
#使用操作系统内核的sendfile支持来将文件发送到客户端
EnableSendfile On
#禁用对客户端IP的DNS查找
HostnameLookups Off
#持久链接(禁用)
KeepAlive Off
KeepAliveTimeout 1
MaxKeepAliveRequests 1

#### 错误应答与错误日志

#自定义错误响应
#400 错误的请求
ErrorDocument 400 /error/http|ErrCode=400.htm
#403 禁止访问
ErrorDocument 403 /error/http|ErrCode=403.htm
#404 未找到
ErrorDocument 404 /error/http|ErrCode=404.htm
#405 方法不被允许
ErrorDocument 405 /error/http|ErrCode=405.htm
#406 资源已经找到但MIME类型与Accpet头中所指不兼容
ErrorDocument 406 /error/http|ErrCode=406.htm
#408 在服务器许可的等待时间内客户一直没有发出任何请求
ErrorDocument 408 /error/http|ErrCode=408.htm
#409 由于请求和资源的当前状态相冲突因此不能成功(通常和PUT有关)
ErrorDocument 409 /error/http|ErrCode=409.htm
#410 所请求的文档已经不再可用而且服务器不知道应该重定向到哪一个地址
ErrorDocument 410 /error/http|ErrCode=410.htm
#411 必须发送Content-Length头否则无法处理
ErrorDocument 411 /error/http|ErrCode=411.htm
#412 指定的一些前提条件失败
ErrorDocument 411 /error/http|ErrCode=412.htm
#413 请求实体太大
ErrorDocument 413 /error/http|ErrCode=413.htm
#414 请求URI太长
ErrorDocument 414 /error/http|ErrCode=414.htm
#415 不支持的MIME类型
ErrorDocument 415 /error/http|ErrCode=415.htm
#416 Range头所请求的范围无法满足
ErrorDocument 416 /error/http|ErrCode=416.htm
#417 执行失败
ErrorDocument 417 /error/http|ErrCode=417.htm
#423 锁定的错误
ErrorDocument 423 /error/http|ErrCode=423.htm
#500 内部服务器错误
ErrorDocument 500 /error/http|ErrCode=500.htm
#501 服务器不支持实现请求所需要的功能
ErrorDocument 501 /error/http|ErrCode=501.htm
#502 服务器用作网关或代理服务器时收到了无效响应
ErrorDocument 502 /error/http|ErrCode=502.htm
#503 服务器由于维护或者负载过重暂时不能提供服务
ErrorDocument 503 /error/http|ErrCode=503.htm
#504 不能及时地从远程服务器获得应答(作为代理或网关的服务器)
ErrorDocument 504 /error/http|ErrCode=504.htm
#505 服务器不支持请求中所指明的HTTP版本
#ErrorDocument 505 /error/http|ErrCode=505.htm

#返回给客户端的错误信息中包含的管理员邮件地址
ServerAdmin webmaster@oklaoshi.org

#错误日志(未使用滚动)

ErrorLog log/error.log
LogLevel info

ErrorLog /var/log/httpd/error.log
LogLevel warn

#### 处理器

#定位CGI脚本解释器(仅用于Win32)
ScriptInterpreterSource Script

#强制所有匹配的文件被一个指定的处理器处理
#SetHandler handler-name|None

#### 输入输出过滤器

#压缩输出所有文本内容(目前反对使用该指令,但因其简单故而使用)
AddOutputFilterByType DEFLATE application/x-javascript application/xhtml+xml application/xslt+xml application/xml application/xml-dtd text/css text/html text/plain text/richtext text/rtf text/xml

#设置处理客户端请求和POST输入时使用的过滤器
#SetInputFilter filter[;filter...]
#设置用于处理服务器输出应答的过滤器
#SetOutputFilter filter[;filter...]

#### 规范化

#使用客户端提供的主机名和端口构建自引用URL
#可以巧妙解决双线机房以及同目录多站点的问题 #还可以巧妙解决同时运行产品环境和开发环境的问题(本配置未使用该技巧)
UseCanonicalName Off
UseCanonicalPhysicalPort Off

#####################################################################
##### 适用于主服务器配置的动态加载模(DSO)块指令 #####

#### mod_deflate ####

#用于zlib一次压缩的片断大小(字节)(20K),一般等于较大页面的大小
DeflateBufferSize 20240
#压缩程度,取值范围在 1(最低压缩率) 到 9(最高压缩率)之间
DeflateCompressionLevel 3
#在日志中将一个指示压缩率标记附加在请求之后(关闭)
#DeflateFilterNote Input instream
#DeflateFilterNote Output outstream
#DeflateFilterNote Ratio ratio
#压缩时最多可以使用多少内存(取值范围在1到9之间)
DeflateMemLevel 9
#压缩窗口的大小(取值范围在1到15之间,越大压缩效果越好)
DeflateWindowSize 15

#目录结尾斜线(/)自动补全功能(通过重定向,强烈建议打开)
#默认的目录索引文件(强烈建议按此顺序设置)

DirectorySlash On
DirectoryIndex index.html index.htm index.php

DirectorySlash Off
DirectoryIndex none

#### mod_env #####
#### mod_setenvif #####

#传送shell中的环境变量
#PassEnv env-variable [env-variable] …
#强制gzip输出[建议不要这样,会让机器人头晕]
#SetEnv force-gzip 1
#删除环境变量(默认不记录任何访问日志)
UnsetEnv AccessLog
#根据客户端请求属性设置环境变量(仅记录对txt/php/html的访问)
SetEnvIf Request_URI “\.(txt|php|html?)$” AccessLog=1

##### mod_expires #####

#启用”Expires:”和”Cache-Control:”头
ExpiresActive On
#由MIME类型配置的Expires头的值
#ExpiresByType MIME-type seconds
#默认所有文档的有效期为30天
ExpiresDefault “access plus 30 days”
#但是php文档默认不存在有效期(随后应当根据实际情况详细设置)

ExpiresActive Off

##### mod_log_config #####

#访问日志(虚拟主机+组合日志格式)(有条件的记录)

CustomLog log/access.log “%v %h %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-agent}i\”" env=AccessLog

CustomLog /var/log/httpd/access.log “%v %h %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-agent}i\”" env=AccessLog

##### mod_mime #####

#在文件扩展名与特定的编码方式之间建立映射关系
#AddEncoding MIME-enc extension [extension] …
#将所有 .html.gz .css.gz 之类经过压缩的静态内容使用”Content-Encoding: gzip”头发送,
#这样既节约带宽又比使用mod_deflate的实时压缩节约CPU
#但只适用于静态内容并且要结合内容协商模块的类型表功能才能实现,而且不利于搜索引擎机器人收录,
#考虑到mod_expires的作用,这份配置放弃这种方法
#不过这样也可能和 AddOutputFilterByType DEFLATE …. 指令冲突,需要进一步实验或寻找其他有效方法
#AddEncoding gzip .gz

#为所有文件设定特定的默认语言(简体中文)
DefaultLanguage zh-CN

#在使用MultiViews查询所匹配的文件时要包含的文件类型
#NegotiatedOnly选项规定每个跟在基础名字后面的扩展名必须关联到一个在内容协商时已知的mod_mime扩展名,
#例如:字符集、内容类型、语言、编码方式。这是一种最严格也是副作用最少的实现方法,它是默认的处理方式。
MultiviewsMatch NegotiatedOnly

#在给定的文件扩展名与特定的字符集之间建立映射
#AddCharset charset extension [extension] …
#在文件扩展名与特定的语言之间建立映射
#AddLanguage MIME-lang extension [extension] …
#在文件扩展名与特定的处理器之间建立映射
#AddHandler handler-name extension [extension] …
#在文件扩展名与特定的输入过滤器之间建立映射
#AddInputFilter filter[;filter...] extension [extension] …
#在文件扩展名与特定的输出过滤器之间建立映射关系
#AddOutputFilter filter[;filter...] extension [extension] …
#在给定的文件扩展名与特定的内容类型之间建立映射
#AddType MIME-type extension [extension] …

##### mod_rewrite #####

#关闭重写引擎(不可继承,必须在每个需要的虚拟主机中单独开启)
RewriteEngine Off
#重写引擎日志的详细程度(9-最详细,0-关闭)
RewriteLogLevel 0
#强制当前配置继承其父配置(映射表、条件、规则)
#RewriteOptions inherit

#定义重写发生的条件(为了提高匹配效率)和规则(不需要考虑#..内容,因为浏览器并不发送)
RewriteCond %{REQUEST_URI} \.htm$
RewriteRule ^(.+)\.htm$ $1.php [NE,C]
RewriteRule ^([^|]+)\|(.+)\.php$ $1.php?$2 [NE,L]

#为server-info处理器显示的模块增加额外信息
#AddModuleInfo module-name string

#开启带宽限制(默认是关闭的,也就是不做任何限制)
BandWidthModule On
#强制对所有请求进行限制
ForceBandWidthModule On
#连接数上限。必须与BandWidth的子网范围对应,当然也可以不使用该指令。
MaxConnection 127.0.0.0/8 2
#带宽上限(B/s)。这里限制为16Kbps
BandWidth 127.0.0.0/8 2048
#带宽下限(B/s),设为”-1″表示仅使用上限。
MinBandWidth all -1
#将数据包分割成每小块1024字节进行延迟发送,可用值为1024-131072,默认为8192。
BandWidthPacket 1024
#将所有大于50kB的文件下载速度限制压低到8Kbps
#LargeFileLimit * 50 1024
#默认到达MaxConnection限制后将发送”503″错误代码(HTTP_SERVICE_UNAVAILABLE),
#该指令允许你自定义一个未使用的错误代码(300~599)并结合ErrorDocument指令实现自定义的错误代码说明。
#BandWidthError 510

################################################################################################
#### 第三部分 默认目录特性/认证/授权/访问控制[这些指令的作用域含有"directory"] #####
################################################################################################
## 默认特性穷尽限制与封闭之能事,因此必须在随后的配置中按需”放水” ##
## 此部分并不包含所有作用域含有”directory”的指令 ##

#禁用.htaccess文件(仅可用于目录)
AllowOverride None
#目录仅可以使用符号链接的特性(仅可用于目录)
Options FollowSymLinks
#必须同时通过认证并且满足访问控制条件
Satisfy all
#使用摘要认证
AuthType Digest
AuthDigestAlgorithm MD5
AuthDigestNonceLifetime 1200
AuthDigestQop auth
AuthDigestProvider file
AuthDefaultAuthoritative On
#所有认证共用一个用户名/密码文件

AuthUserFile conf/authn.md5

AuthUserFile /etc/httpd/authn.md5

AuthzUserAuthoritative On
AuthzDefaultAuthoritative On
#拒绝所有访问(mod_authz_host)
#Allow from 127.0.0.1
Deny from all
Order Allow,Deny

#因为在所有之后合并,所以下面可以确保拒绝访问任何”secret”目录

AllowOverride None
Options FollowSymLinks
Satisfy all
Deny from all
Order Allow,Deny

##下面是一段非常愚蠢的做法,完全推翻了上述默认的访问控制,因为在最后合并
##实际效果变成允许GET和POST访问一切目录和文件!!!
#
#企图仅仅允许GET和POST方法(实际上行不通)
#
# Order Allow,Deny
# Deny from all
#
#

############################################################################
#### 第四部分 默认虚拟主机[这些指令的作用域都含有"virtual host"] #####
############################################################################

#(共享服务器,存放与特定子站无关或无法在子站内部统一的内容)
#文档树根目录、主机名和别名
DocumentRoot /www/oklaoshi/www
ServerName oklaoshi.org
ServerAlias oklaoshi.net oklaoshi.com oklaoshi.cn
ServerAlias www.oklaoshi.org www.oklaoshi.net www.oklaoshi.com www.oklaoshi.cn

#开启重写引擎并继承主服务器配置(映射表、条件、规则)
RewriteEngine On
RewriteOptions inherit

#传送shell中指定的加密密钥(最好只传递到特定目录下的特定文件)
#PassEnv ENCRYPT_KEY

#重新设置PHP针对每个站点的不同特性
php_admin_value open_basedir “/www/oklaoshi/”
php_admin_flag file_uploads Off
php_admin_value include_path “/www/oklaoshi/secret”
php_admin_value session.name “OKLAOSHISESSIONID”
php_admin_value session.referer_check “oklaoshi.”

#默认为非本地引用
UnsetEnv Local_Referer
#判断是否为本地引用
SetEnvIf Referer “oklaoshi\.(org|net|com|cn)” Local_Referer

Order Allow,Deny
Allow from all
#防止盗链(必须放在内部)

Order Allow,Deny
Allow from env=Local_Referer

#### 下面的指令只能在虚拟主机中设置
#删除任何给定的扩展名与内容字符集之间的关联
#RemoveCharset extension [extension] …
#删除任何给定的扩展名与内容编码方式之间的关联
#RemoveEncoding extension [extension] …
#删除任何指定扩展名与处理器之间的关联
#RemoveHandler extension [extension] …
#删除指定扩展名与输入过滤器之间的关联
#RemoveInputFilter extension [extension] …
#删除指定的扩展名与内容语言之间的关联
#RemoveLanguage extension [extension] …
#删除指定扩展名与输出过滤器之间的关联
#RemoveOutputFilter extension [extension] …
#删除指定扩展名与内容类型之间的关联
#RemoveType extension [extension] …

## 服务器配置报告

SetHandler server-info
AuthName Apache_Admin
Require user Apache_Admin
Satisfy all
Order Allow,Deny
Allow from all

## 服务器状态报告

SetHandler server-status
AuthName Apache_Admin
Require user Apache_Admin
Satisfy all
Order Allow,Deny
Allow from all

############################################################################
#### 第四部分 其它虚拟主机 #####
############################################################################

#文档树根目录、主机名和别名(与”主服务器”设为相同即可取消”主服务器”)(.org/.net电信 .com/.cn网通)(其他是各地分站)
DocumentRoot /www/oklaoshi/htdocs
ServerName bj.oklaoshi.org
ServerAlias bj.oklaoshi.net bj.oklaoshi.com bj.oklaoshi.cn
ServerAlias tj.oklaoshi.org tj.oklaoshi.net tj.oklaoshi.com tj.oklaoshi.cn
ServerAlias sh.oklaoshi.org sh.oklaoshi.net sh.oklaoshi.com sh.oklaoshi.cn
ServerAlias nj.oklaoshi.org nj.oklaoshi.net nj.oklaoshi.com nj.oklaoshi.cn
ServerAlias gz.oklaoshi.org gz.oklaoshi.net gz.oklaoshi.com gz.oklaoshi.cn

#开启重写引擎并继承主服务器配置(映射表、条件、规则)
RewriteEngine On
RewriteOptions inherit

#传送shell中指定的加密密钥(最好只传递到特定目录下的特定文件)
PassEnv ENCRYPT_KEY

#重新设置PHP针对每个站点的不同特性
php_admin_value open_basedir “/www/oklaoshi/”
php_admin_flag file_uploads Off
php_admin_value include_path “/www/oklaoshi/secret”
php_admin_value session.name “OKLAOSHISESSIONID”
php_admin_value session.referer_check “oklaoshi.”

#默认为非本地引用
UnsetEnv Local_Referer
#判断是否为本地引用
SetEnvIf Referer “oklaoshi\.(org|net|com|cn)” Local_Referer

Order Allow,Deny
Allow from all
#防止盗链(必须放在内部)

Order Allow,Deny
Allow from env=Local_Referer

#网站根用户后台管理目录(需要认证)

AuthName Root_Admin
Require user Root_Admin
Satisfy all
Order Allow,Deny
Allow from all
#后台管理关闭重写引擎
RewriteEngine Off

#(数据库管理服务器(phppgadmin))

#文档树根目录、主机名和别名
DocumentRoot /www/phppgadmin
ServerName dbadmin.oklaoshi.org
ServerAlias dbadmin.oklaoshi.net dbadmin.oklaoshi.com dbadmin.oklaoshi.cn

#关闭重写引擎
RewriteEngine Off
#修改主服务器设置
AddDefaultCharset Off
LimitRequestBody 5242880
DirectorySlash On
DirectoryIndex index.html index.htm index.php

#重新设置PHP的一些特性
php_admin_value open_basedir “/www/phppgadmin”
php_admin_flag display_errors Off
php_admin_flag display_startup_errors Off
php_admin_flag html_errors Off
#php_admin_flag log_errors Off
php_admin_value max_execution_time 15
php_admin_value memory_limit 16M
php_admin_value max_input_time 600
php_admin_value max_input_nesting_level 32
php_admin_value post_max_size 4M
php_admin_flag file_uploads On
php_admin_value upload_max_filesize 4M
php_admin_value arg_separator.output “&”
php_admin_value arg_separator.input “&”
php_admin_value variables_order “GPCS”
php_admin_flag implicit_flush Off
php_admin_value output_buffering 8192
php_admin_value include_path “.”
php_admin_value default_charset none
php_admin_flag detect_unicode Off
php_admin_value ignore_user_abort On
php_admin_value session.name “DBADMINSESSIONID”
php_admin_value session.referer_check “dbadmin.oklaoshi.”
php_admin_value mbstring.func_overload 0

AuthName DB_Admin
Require user DB_Admin
Satisfy all
Order Allow,Deny
Allow from all

分类: Linux, 软件使用 标签:

把UltraEdit加入到右键菜单中(转贴)

2013年10月3日 没有评论

UltraEdit安装好之后,拷贝到其它机器就可以直接使用而无需注册,但少了一个功能,就是无法选择某个文本文件用右键选择UltraEdit打开,很不方便,仔细查看注册表,发现把下面内容加入注册表即可:

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\*\shell]
[HKEY_CLASSES_ROOT\*\shell\UltraEdit]
@=”UltraEdit-32″
[HKEY_CLASSES_ROOT\*\shell\UltraEdit\Command]
@=”D:\\temp\\uedit32.exe %1″
其中D:\\temp\\uedit32.exe 为UltraEdit的绝对位置,把这些内容修改成UltraEdit所在的正确位置,把上述内容放在一个叫XX.reg的文件,双击即可安装成功。

但这样也不方便,因为不同的环境,都要修改最后一行,难道没有好办法了吗?有,看下面:

@echo off
echo Windows Registry Editor Version 5.00> tmp.reg
echo [HKEY_CLASSES_ROOT\*\shell]>> tmp.reg
echo [HKEY_CLASSES_ROOT\*\shell\UltraEdit]>> tmp.reg
echo @=”UltraEdit-32″>> tmp.reg
echo [HKEY_CLASSES_ROOT\*\shell\UltraEdit\Command]>> tmp.reg
set str=%cd%
echo @=”%str:\=\\%\\uedit32.exe %%1″>> tmp.reg
echo *=========================================================================*
echo * *
echo * 正在将生成的注册信息写入注册表,请点击“是”键钮! *
echo * *
echo *=========================================================================*
tmp.reg
del tmp.reg

上面是一个批处理文件代码,主要功能是动态生成uedit32.exe 所在路径(当前文件夹),并把这些内容写入一个叫tmp.reg的文件,然后执行,执行完后立即删除。注意:要在uedit32.exe 所在的路径下执行这个批处理。

分类: 解决方案 标签:

查看忘记路由器 tp-link 的adsl用户密码

2013年9月16日 没有评论

很不巧,我真的忘记密码了。哈哈。是真的,对于经常不输入密码的路由器的adsl权限来讲。是很纠结的事。还好啦。有工具可以帮助我们把密码“找”出来。

本人家中是使用一款 tp-link 的四口路由器。由于先前使用时设置好了密码就没再动了。今天想登陆中国电信看下到期时间。无奈怎样输入密码也不对了。

经过查找相关资料发现有个办法可以解决:
先用浏览器(必须)进路由器管理界面
系统工具 — 备份和载入配置 — 备份路由器配置文件到D盘(TP-LINK :config.bin)

然后百度下载一个软件叫:RouterPassView 找不到可以问我要
用RouterPassView打开刚才保存的路由器备份配置文件 config.bin
如图所示:

使用此软件的前提是:必须知道路由器管理界面的登录密码

当然这种办法是最为暴力的。。。一般来这样就可以解决问题了。可用于其他路由器,这软件真”危险”。

VPS技术XEN介绍

2013年9月8日 没有评论

XEN 是英国剑桥大学计算机实验室开发的一个虚拟化开源项目,XEN 可以在一套物理硬件上安全的执行多个虚拟机,它和操作平台结合的极为密切,占用的资源最少。

Xen是通过一种称为准虚拟化技术而实现的,拥有高性能,就连那些和传统虚拟技术很不良好的架构上(x86),Xen也有很良好的表现。Xen和传统通过软件模拟实现硬件的虚拟机不相同,在Intel Vt-x的支持下Xen 3.0之前的版本需要系统的来宾权限,用来与Xen API进行连接。到现在为止,这种技术已经能够应用在NetBSD,FreeBSD,Plan 9和GNU/Linux系统上。Sun的微系统公司也正在积极的实现在Xen平台上移植Solaris。

Xen目前可以运行在x86系统上,并正在向x86_64、IA64、PPC移植。移植到其他平台从技术上是可行的,未来有可能会实现。

目前稳定版本为XEN3.0。支持万贯虚拟化和超虚拟化。以高性能、占用资源少著称,赢得了IBM、AMD、HP、Red Hat和Novell等众多世界级软硬件厂商的高度认可和大力支持,已被国内外众多企事业用户用来搭建高性能的虚拟化平台。

Xen虚拟机可以在不停止的情况下在多个物理主机之间实时迁移。在操作过程中,虚拟机在没有停止工作的情况下内存被反复的复制到目标机器。虚拟机在最终目的地开始执行之前,会有一次60-300毫秒的非常短暂的暂停以执行最终的同步化,给人无缝迁移的感觉。类似的技术被用来暂停一台正在运行的虚拟机到磁盘,并切换到另外一台,第一台虚拟机在以后可以恢复。

XEN 是一个基于X86架构、发展最快、性能最稳定、占用资源最少的开源虚拟化技术。Xen可以在一套物理硬件上安全的执行多个虚拟机,与Linux 是一个完美的开源组合,Novell SUSE Linux Enterprise Server 最先采用了XEN虚拟技术。它特别适用于服务器应用整合,可有效节省运营成本,提高设备利用率,最大化利用数据中心的IT基础架构。

VPS技术之Virtuozzo介绍

2013年9月8日 没有评论

Virtuozzo是SWsoft公司(目前SWsoft已经改名为parallels)的操作系统虚拟化软件的命名,该操作系统虚拟化软件是一项 服务器虚拟化和自动化技术,它采用的是操作系统虚拟化技术。操作系统虚拟化的概念是基于共用操作系统内核,这样虚拟服务器就无需额外的虚拟化内核的过程, 因而虚拟过程资源损耗就更低,从而可以在一台物理服务器上可以实现更多的虚拟化服务器。这些VPS以最大化的效率共享硬件、软件许可证以及管理资源。每一 个VPS均可独立进行重启,并拥有自己的root访问权限、用户、IP地址、内存、过程、文件、应用程序、系统函数库以及配置文件。Virtuozzo技 术同时支持Linux和Windows平台。Linux版Virtuozzo服务器还支持在虚拟服务器上实现同版本内核的不同Linux发行版。

· Virtuozzo 技术优点

密度与其他的虚拟化技术相比,Parallels Virtuozzo在单台物理服务器(硬件节点)上可获得超过3倍的虚拟服务器数量。

与其说这个是优势,不如说是缺点。VZ的虚拟机性能差应该和他所谓的密度有关系。最佳的易管理特性 全球唯一的在增加虚拟服务器数量同时降低操作系统复杂增长(OS sprawl)的虚拟化解决方案。

这个因为基于操作系统的虚拟,节省了软件授权的成本,还有他的易管理,确实是一个特点。

原始服务器性能 虚拟服务器接近原始物理服务器性能,整合性能敏感负载后不会有性能损失困扰。

关于这个原始服务器性能,我觉得是严重的吹嘘。据我的使用发现,VZ的最大缺点就是,如果某一个虚拟机的资源占用过高,会影响到其他的虚拟机。毕竟不是底层的虚拟化,就和一个软件一样。当操作系统中的一个软件占用资源过高,其他的软件速度也会影响。

高可靠性 优化整体虚拟IT基础架构的在线时间以确保业务连续性。

一般来说,服务器上的技术都有这个特点。VMware也有,Hyper-V也有。

成熟的技术 Parallels Virtuozzo已经成功部署在超过10,000台物理服务器上,始终如一地为客户提供超水平的隔离、安全和稳定性等性能。

不知道是否真的不熟在这么多服务器上。但是我知道VMware和Hyper-V部署的数字肯定要远远超过这个。

VPS技术之VMware介绍

2013年9月8日 没有评论

VM虚拟化技术VPS。VMware相信很多人都用过。而VMware整个家族也都在同样的事:虚拟化。对于虚拟化的理解再也没有比VMware更深刻了。

我们在这里介绍的VMware VPS主要是基于VMware ESX搭建的VPS进行介绍。有个别服务商采用VMware PC版家用机的产品做VPS。你敢用吗?

VMware ESX 服务器是在通用环境下分区和整合系统的虚拟主机软件。它是具有高级资源管理功能高效,灵活的虚拟主机平台。

VMware ESX Server 为适用于任何系统环境的企业级的虚拟计算机软件。大型机级别的架构提供了空前的性能和操作控制。它能提供完全动态的资源可测量控制,适合各种要求严格的应 用程序的需要,同时可以实现服务器部署整合,为企业未来成长所需扩展空间。ESX Server亦提供储存虚拟化的能力。除可因兼并服务 器减少设备购买及维护成本外,亦可因效能的尖峰离峰需求,以VMotion技术在各服务器或刀片服务器之刀板间弹性动态迁移系统平台,让IT人员做更有效 的资源调度,并获得更好且安全周密的防护,当系统发生灾难时,可以在最短的间( 毋需重新安装 操作系统 ) ,迅速复原系统的运作 。

 

完美匹配企业数据中心,通过提高资源使用率,扩展计算机性能和优化服务器, VMware ESX 服务器帮助企业降低计算机基础构架的成本。VMware ESX 服务器能实现:

·服务器整合

VMware ESX 服务器能在更少的高伸缩和高可靠企业级服务器上,包括刀片式服务器,整合运行在不同操作系统上的应用程序和基本服务。

·提供高性能并担保服务品质

ESX 服务器支持出于开发和测试为目的,在同一系统内的虚拟主机集群;同样也高性能的支持系统间的虚拟主机集群。VMware ESX 服务器担保服务器的CPU,内存,网络带宽和磁盘 I/O 处于最优化的状态,改进对内和对外的服务。

·流水式测试和部署

VMware ESX 服务器压缩虚拟主机镜像以便它们在环境间能被非常容易的迁移,确保软件测试者和质量检验工程师在相对少的时间和硬件状态下做更多有效的测试。

·可伸缩的软硬件构架

VMware ESX 服务器包含支持 VMware Virtual SMP,确保企业在灵活,安全和轻便的虚拟主机上运行所有重要的应用程序。

·提供高性能并担保服务品质

VMware ESX服务器传输物理系统到逻辑资源池,系统和应用程序被分离在包含多虚拟机的单一硬件片上。系统资源按需动态分配到任何操作系统上,提供大型机的性能和 服务器资源控制。VMware ESX 服务器通过在安全便捷的虚拟机上执行分区和分割服务器资源来简化服务器的基础构架。VMware ESX 服务器确保服务器资源能被远程管理,自动预制和标准化。高级资源管理控制通过企业担保服务质量。

直接运行在系统硬件上的 VMware ESX 服务器为部署,管理和远程控制多虚拟机提供了一个安全,唯一的平台。有了VMware ESX服务器:

· 特定系统的应用程序能被迁移到在更可靠和可伸缩的不同虚拟机上去。
· 服务器能从任何地方被远程管理,简化服务器维护。
· 通过高级资源管理控制,服务质量能得到保证。
· 普通的监控和管理任务是自动脚本式的。
· 无须添加新的物理系统,性能得到明显提升。

关于VMware的资料互联网上太多太多,一段时间里,VMware就是虚拟机,就是虚拟化的代名词。

VPS技术之Hyper-v介绍

2013年9月8日 没有评论

微软Microsoft Hyper-V虚拟化技术VPS。微软进入虚拟化也有一段时间了。旗下的Virtual Server也算是小有名气,也有一定的客户群。

Hyper-v主机是基于Windows 2008 ×64的Hyper-V实现的Hyper-v主机技术,又称Hyper-v主机由于“微软公司的 Hyper-V技术”是全球领先的真正的“硬虚拟化”技术,在性能及稳定上有无可比拟的优势,每个Hyer-v主机都可分配独立公网IP地址、独立操作系 统、独立超大空间、独立内存、独立CPU资源具有独立服务器功能,可自行安装程序,单独重启服务器。Hyer-v主机是高端虚拟主机用户的最佳选择。您不 再受其他用户程序对您造成的影响,您将得到的是更加公平的资源分配,远远低于虚拟主机的故障率。

VPS技术之KVM介绍

2013年9月8日 没有评论

KVM (全称是 Kernel-based Virtual Machine) 是 Linux下x86硬件平台上的全功能虚拟化解决方案,包含一个可加载的内核模块 kvm.ko 提供和虚拟化核心架构和处理器规范模块。

KVM技术已经从最初的概念发展成为企业 IT 基础设施管理系统。可以从kvm client管理软件这样的单一界面直接访问位于多个远程位置的服务器和设备。

我们使用 KVM 引用内核虚拟机,使用 kvm 引用系统管理程序(用来启动一台新虚拟机)。

虚拟化也可以使用更加复杂的格式, 其中单个计算机看上去具有多个架构 (对于一个用户来说,它是一个标准的 x86 平台;对于另外一个用户来说,它是 IBM Power PC® 平台)。

这种虚拟化形式通常被称为 硬件仿真。

KVM over IP 解决方案现在已具备完善的多地点故障转移功能、符合新服务器管理标准 (IPMI) 的直接界面,以及将本地存储媒体映射至远程位置的功能。

使用 KVM 可允许多个包括 Linux 和 Windows 每个虚拟机有私有的硬件,包括网卡、磁盘以及图形适配卡等。

最后,更加简单的一种虚拟化是操作系统虚拟化,其中一台计算机可以运行相同类型的多个操作系统。这种虚拟化可以将一个操作系统的多个服务器隔离开来 (这意味着全都必须使用相同类型和版本的操作系统)。

linux下流量查看工具iftop介绍

2013年8月30日 没有评论

简介

iftop是类似于linux下面top的实时流量监控工具。

系统优点

iftop可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等,详细的将会在后面的使用参数中说明。

安装方法

iftop使用方法
如果采用编译安装可以到iftop 官网下载最新的源码包。
安装前需要已经安装好基本的编译所需的环境,比如make、gcc、autoconf等。安装iftop还需要安装libpcap和libcurses。

CentOS上安装所需依赖包:
yum install flex byacc libpcap ncurses ncurses-devel

Debian上安装所需依赖包:
apt-get install flex byacc libpcap0.8 libncurses5
wget IFTOP URL
tarzxvf iftop-0.17.tar.gz
cdiftop-0.17
./configure
make && make install

CentOS系统运行:
yum install iftop

Debian系统 运行:
apt-get install iftop

运行iftop
直接运行: iftop
相关参数及说明
TX:发送流量
RX:接收流量
TOTAL:总流量
Cumm:运行iftop到目前时间的总流量
peak:流量峰值
rates:分别表示过去 2s 10s 40s 的平均流量
-i设定监测的网卡,如:# iftop -i eth1
-B 以bytes为单位显示流量(默认是bits),如:# iftop -B
-n使host信息默认直接都显示IP,如:# iftop -n
-N使端口信息默认直接都显示端口号,如: # iftop -N
-F显示特定网段的进出流量,如# iftop -F 10.10.1.0/24或# iftop -F 10.10.1.0/255.255.255.0
-h(display thismessage),帮助,显示参数信息
-p使用这个参数后,中间的列表显示的本地主机信息,出现了本机以外的IP信息;
-b使流量图形条默认就显示;
-f这个暂时还不太会用,过滤计算包用的;
-P使host信息及端口信息默认就都显示;
-m设置界面最上边的刻度的最大值,刻度分五个大段显示,例:# iftop -m 100M
按h切换是否显示帮助;
按n切换显示本机的IP或主机名;
按s切换是否显示本机的host信息;
按d切换是否显示远端目标主机的host信息;
按t切换显示格式为2行/1行/只显示发送流量/只显示接收流量;
按N切换显示端口号或端口服务名称;
按S切换是否显示本机的端口信息;
按D切换是否显示远端目标主机的端口信息;
按p切换是否显示端口信息;
按P切换暂停/继续显示;
按b切换是否显示平均流量图形条;
按B切换计算2秒或10秒或40秒内的平均流量;
按T切换是否显示每个连接的总流量;
按l打开屏幕过滤功能,输入要过滤的字符,比如ip,按回车后,屏幕就只显示这个IP相关的流量信息;
按L切换显示画面上边的刻度;刻度不同,流量图形条会有变化;
按j或按k可以向上或向下滚动屏幕显示的连接记录;
按1或2或3可以根据右侧显示的三列流量数据进行排序;
按<根据左边的本机名或IP排序;
按>根据远端目标主机的主机名或IP排序;
按o切换是否固定只显示当前的连接;
按f可以编辑过滤代码,这是翻译过来的说法,我还没用过这个!
按!可以使用shell命令,这个没用过!没搞明白啥命令在这好用呢!
按q退出监控。