无法在 emerge 时启用 apache mod

无法在 emerge 时启用 apache mod

我想将 mod_proxy 和 mod_proxy_http 添加到我的 Gentoo 上的 Apache 服务器,但显然系统上某些高优先级文件正在禁用这些模块并阻止我安装。

我目前正在编辑/usr/portage/profiles/base/make.defaults文件,但每次更新系统时它都会更新(更改会丢失)。每次更新系统/重新安装 Apache 时我都必须编辑它。

除此之外,我已经向/etc/portage/package.use文件添加了依赖项:

www-servers/apache proxy proxy_http

我还有哪些文件需要更改或应该检查标志,以便我可以启用代理,而不必每次都再次编辑文件?

答案1

${PORTDIR}/profiles/base/make.defaults不适用于用户编辑。(这种情况的一个提示是路径名以 开头/usr,但不包含/local在其中。)相反,您应该编辑/etc/portage/make.conf(或者,如果您有旧安装并且尚未移动make.conf/etc/make.conf)。请注意,如果您只是尝试通过变量添加几个模块,则可以使用的类似表示法APACHE2_MODULES引用原始变量的值。(这种引用是必要的,因为与 不同,是sh${APACHE2_MODULES}USEAPACHE2_MODULES不是一个增量make.conf变量。)在/etc/portage/make.conf

APACHE2_MODULES="${APACHE2_MODULES} proxy proxy_http"

有关更多信息make.conf,请查看本地系统上安装的 portage 手册页:$ man 5 make.conf

正如您所提到的/etc/portage/package.use,请注意还可以通过 配置这些标志package.use。但请注意,这APACHE2_MODULES是一个“ USE_EXPAND”变量。这意味着您在 中设置的任何值都make.conf将自动以 为前缀apache2_modules_(小写的变量名称加上下划线)。因此,您也可以在 中使用以下条目进行更改package.use

www-servers/apache apache2_modules_proxy apache2_modules_proxy_http

变量USE_EXPAND的扩展是真正的 useflag。也就是说,apache2_modules_proxy是实际接受的正常 useflag www-servers/apache。如果您指定使用标志,proxy并且 proxy_http , portage just silently ignores those becausewww-servers/apache` 不会定义/接受此类 useflag。

相关内容