Debian系统(也可能是其他的)在/ etc / apache2 /
mods-available/ mods-enables/ sites-available/ sites-enabled/
默认设置在mods-available和site-available中都有一大堆文件,然后在* -enabled /中有这些文件的符号链接。
我从来没有与符号链接困扰。 我一直只是移动文件。
我认为,这可以让你很容易地看到哪些MOD /网站已启用,哪些没有。 符号链接只能让你看到哪些已被启用(很容易,无论如何,不诉诸差异)。 但是,我的同事却有不同的看法。
那么,正确的方法是什么?为什么?
“正确的方法”是使用a2enmod&a2dismod启用和禁用模块,a2ensite&a2dissite启用和禁用站点。
a2 * mod命令为您提供了您的系统上安装的[disabled | enabled]模块列表,然后您可以[启用|禁用]。 与a2 *站点命令相同,但是它们可以在站点可用目录中使用站点configuration文件的列表(既可以是默认情况下的,也可以是已创build的)。
你也可以手动从* -avaliable到* -enabled的符号链接,但是提供了这些命令,并且几乎是这样做的。
a2enmod的输出示例:
Your choices are: actions alias asis auth_basic auth_digest authn_alias authn_anon authn_dbd authn_dbm authn_default authn_file authnz_ldap authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cern_meta cgi cgid charset_lite dav dav_fs dav_lock dbd deflate dir disk_cache dump_io env expires ext_filter file_cache filter headers ident imagemap include info ldap log_forensic mem_cache mime mime_magic negotiation pagespeed php5 proxy proxy_ajp proxy_balancer proxy_connect proxy_ftp proxy_http proxy_scgi reqtimeout rewrite setenvif speling ssl status substitute suexec unique_id userdir usertrack version vhost_alias Which module(s) do you want to enable (wildcards ok)?
我一直是为虚拟主机帐户创build主目录的粉丝。 这有几个好处,比如使用ftp和ssh轻松实现chroot,当然权限也更容易pipe理。
我不认为有一个“正确”的方式,有不同的方式,每个人都有自己的方法。
有一件事是肯定的。 我不喜欢Debian(或Ubuntu)apache服务器configuration虚拟主机的方式。 我喜欢apache的CentOS安装。
您可以在我生成的虚拟主机脚本中查看我的设置( https://github.com/metalmini/vhostusers/blob/master/vhostusers.sh )
有一个禁用模块列表有任何意义吗? 当然相关的因素是服务器是否支持某些东西,你可以通过查看它是否在启用列表中来判断。
启用始终是符号链接来取用。
所以你总是有完整的名单,现在工作列表。 此外,符号链接可能有像001网站,客户端ID-12网站等名称,所以某种结构。
你也不需要做很多地方的改变。 只更改一个文件。
也只是看起来很漂亮。
而且我看不到这个结构有什么不利之处,为什么不呢? ;)