Apache模块
mod_cgi/mod_cgid 负责CGI脚本处理。为工作和事件多线程的MPM使用CGI守护“mod_cgid”模块。本教程将帮助您如何在Linux操作系统Apache 2.4服务器中启用或禁用CGI脚本。
1. 启用Apache中CGI模块
要在Apache服务器的CGI启用。你需要加载模块文件
mod_cgi.so或
mod_cgid.so在Apache的配置文件。
CentOS,RHEL和Fedora用户 -
在CentOS,Red Hat,Fedora和其他基于rpm的发行linux版中编辑
/etc/httpd/conf.modules.d/XX-cgi.conf配置文件,并确保在下面显示行取消注释。
<IfModule mpm_worker_module>
LoadModule cgid_module modules/mod_cgid.so
</IfModule>
<IfModule mpm_event_module>
LoadModule cgid_module modules/mod_cgid.so
</IfModule>
<IfModule mpm_prefork_module>
LoadModule cgi_module modules/mod_cgi.so
</IfModule>
Ubuntu,Debian&LinuxMint用户 -
Ubuntu,Debian,LinuxMint和其他Debian的衍生linux中使用以下命令启用CGI模块。此命令创建模块配置文件到/etc/apache2/mod-enabled/ 目录下的软链接。
$ sudo a2enmod cgi
在Apache配置使CGI模块后,您需要重新启动Apache服务在系统上更改生效。
2. 在Apache中禁用CGI模块
我们建议,让您的服务器上禁用,直到它推荐给您的服务器的CGI。 CGI脚本被黑客用来在服务器上的攻击。使用下面的选项到Apache服务器上禁用CGI脚本。
CentOS,RHEL和Fedora用户 -
CentOS的,Red Hat,Fedora和其他基于RPM的发行linux版中重命名
/etc/httpd/conf.modules.d/XX-cgi.conf配置文件象下面这样。
$ mv /etc/httpd/conf.modules.d/XX-cgi.conf /etc/httpd/conf.modules.d/XX-cgi.conf.disable
Ubuntu的,Debian的&LinuxMint用户 -
Ubuntu的,Debian的,LinuxMint和其他Debian的衍生linux中使用以下命令禁用CGI模块。
$ a2dismod cgi
禁用CGI模块后,需要重新启动Apache服务在系统上更改生效。 参考:
http://httpd.apache.org/docs/2.4/howto/cgi.html