您好,欢迎来到思海网络,我们将竭诚为您提供优质的服务! 诚征网络推广 | 网站备案 | 帮助中心 | 软件下载 | 购买流程 | 付款方式 | 联系我们 [ 会员登录/注册 ]
促销推广
客服中心
业务咨询
有事点击这里…  531199185
有事点击这里…  61352289
点击这里给我发消息  81721488
有事点击这里…  376585780
有事点击这里…  872642803
有事点击这里…  459248018
有事点击这里…  61352288
有事点击这里…  380791050
技术支持
有事点击这里…  714236853
有事点击这里…  719304487
有事点击这里…  1208894568
有事点击这里…  61352289
在线客服
有事点击这里…  531199185
有事点击这里…  61352288
有事点击这里…  983054746
有事点击这里…  893984210
当前位置:首页 >> 技术文章 >> 文章浏览
技术文章

在apache配置文件中使用IfDefine

添加时间:2011-3-7  添加: admin 

Apache允许使用IfDefine以及IfModule指令来快速而且更容易的更改配置。使用IfDefine以及IfModule标签后,无需更改http.conf文件即可以快速的更改运行中的Apache得配置。IfDefine标签允许在命令行中使用某个标志来指定某些配置选项是否出于启用状态,如:

[root@ilinux.com.cn]#/usr/local/apache2/bin/apachectl –D SSL
        这个命令就将启用apache配置文件中一个名为SSL的标志。也即将启用如下标签中的配置部分.(详细内容见我的另一篇文章WINDOW环境下Apache-2.0.58+mod_ssl+mod_jk-2.0.55+Tomcat-5.5.16的整合):

<IfDefine SSL>
Listen 443 #监听443端口
AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl    .crl
SSLPassPhraseDialog  builtin

SSLSessionCache         dbm:logs/ssl-scache.log
SSLSessionCacheTimeout  300

SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
<VirtualHost 192.168.0.134:443> #虚拟主机IP
#  General setup for the virtual host
DocumentRoot "C:/Apache/htdocs" #根目录
ServerName www.ilinux.com.cn:443 #虚拟主机域名.没有的可以直接用IP
ServerAdmin forlinux@hotmail.com
ErrorLog logs/SSL.log
TransferLog logs/ssl_access.log

SSLEngine on #启用SSL,必须

SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL

SSLCertificateFile conf/ssl/server.crt
#SSLCertificateFile conf/ssl.crt/server-dsa.crt

SSLCertificateKeyFile conf/ssl/server.key

#SSLVerifyClient require
#SSLVerifyDepth  10
<Files ~ "\.(cgi|shtml|phtml|php3?)$">
    SSLOptions +StdEnvVars
</Files>
<Directory "cgi-bin">
    SSLOptions +StdEnvVars
</Directory>

SetEnvIf User-Agent ".*MSIE.*"  nokeepalive ssl-unclean-shutdown  downgrade-1.0 force-response-1.0
CustomLog logs/ssl_request_log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>                                 

</IfDefine>

              IfModuole标签具有类似的效果,其作用是先检查当前模块是否已经加载,若已经加载,则标签中的配置有效,若没有加载,则标签中的配置无效。

      <IfModule mod_ssl.c>
    Include conf/ssl.conf
</IfModule>
 以上标签同样是我在WINDOW环境下Apache-2.0.58+mod_ssl+mod_jk-2.0.55+Tomcat-5.5.16的整合一文中用到的其作用就是先检测是否启用了mod_ssl模块,若启用了,就包含conf/ssl.conf文件。这样做的好处是,若我想禁止mod_ssl,只需要注释如下一行:

#LoadModule ssl_module modules/mod_ssl.so
        怎么样,用这两个配置指令,蛮方便的吧。当然Apache的能力远不止于此,更多的功能还需要大家在使用过程中加以领会和应用。


关键字:apache 配置文件 使用 IfDefine
分享到:

顶部 】 【 关闭
版权所有:佛山思海电脑网络有限公司 ©1998-2024 All Rights Reserved.
联系电话:(0757)22630313、22633833
中华人民共和国增值电信业务经营许可证: 粤B1.B2-20030321 备案号:粤B2-20030321-1
网站公安备案编号:44060602000007 交互式栏目专项备案编号:200303DD003  
察察 工商 网安 举报有奖  警警  手机打开网站