我在 vhost (php-fpm/apache) 配置方面遇到了问题。它引发了以下错误:
name ProxyPass worker name (unix:///var/www/vhosts/system/site/php-fpm.sock|fcgi://127.0.0.1:9000/var/www/vhosts/site/httpdocs) too long...
我知道我可以使用符号链接或者仅删除 unix 套接字或 fgcid 部分来轻松解决这个问题。
但是我在想另一种方法。我想知道是否可以使用 构建模块mod_proxy
,apxs
将 设置PROXY_WORKER_MAX_NAME_SIZE
为大于 96 个字符,然后将其安装到我的 Apache 2.4。
我怎样才能做到这一点?
答案1
构建 Apache
下载 apache 2.4.x + apr + apr_util
构建 apr 和 apr_include(./configure 和 make)来创建 .h 在 apache2.4/include 中复制 apr/include/* 在 apache2.4/include 中复制 apr_util/include/* 在 apache2.4/include 中复制 apache2/os/unix/os.h(用于 linux 构建)
构建Apache:
./configure --enable-so --with-included-apr --includedir=/home/remy/Bureau/build_2.4.7/apache2/include/ --with-apache=/home/remy/Bureau/build_2.4.7/apache2/
Make
构建 apache 模块(使用 gcc):
gcc -fPIC -DSHARED_MODULE -I/home/frogg/Bureau/build/apache2 -I/home/frogg/Bureau/build/apache2/include/-c mod_proxy.h
然后创建与 apache 一起使用的 so 文件
touch mod_proxy.so
ld -Bshareable -o mod_proxy.so mod_proxy.o
将.so 文件放在您的 apache 模块启用文件夹中(或可用,然后 a2enmod ..)
重新启动 apache 就可以了
要更改最大大小,请转至mod_proxy.h:305
(第 305 行)并将 96 更改为您想要的值:
#define PROXY_WORKER_MAX_NAME_SIZE 96
来源
Apache 源代码可从这里获取:
Apache APR 源代码可从此处获取:
官方安装文档
答案2
也许你可以尝试更新你的 apache 版本
来源 :https://bugs.archlinux.org/task/43551
The bug was reported to apache in 2012 https://issues.apache.org/bugzilla/show_bug.cgi?id=53218 and the issue is marked as resolved simple by making the size to 256.