nginx编译安装出现的常见错误

1、./configure: error: the HTTP rewrite module requires the PCRE library.
You can either disable the module by using --without-http_rewrite_module
option, or install the PCRE library into the system, or build the PCRE library
statically from the source with nginx by using --with-pcre= option.

这个错误是由于您正在尝试编译nginx并启用HTTP重写模块,但系统缺少PCRE库。有几种解决方案可以解决这个问题:

安装系统上的PCRE库。在Ubuntu / Debian上,您可以使用以下命令:

sudo apt-get install libpcre3 libpcre3-dev

在CentOS / RedHat上,您可以使用以下命令安装PCRE:

sudo yum install pcre pcre-devel

如果您无法在系统上安装PCRE,则可以使用–with-pcre = 选项静态构建PCRE库。将 替换为PCRE源代码的路径。

./configure --with-pcre=/usr/local/src/pcre-8.44

这将在编译期间构建一个静态PCRE库,以便nginx可以使用它以启用HTTP重写模块。

希望这些解决方案可以帮助您解决问题。

2、./configure: error: SSL modules require the OpenSSL library.
You can either do not enable the modules, or install the OpenSSL library
into the system, or build the OpenSSL library statically from the source
with nginx by using --with-openssl= option.

这个错误是因为您正在尝试编译nginx并启用SSL模块,但系统缺少OpenSSL库。有几种解决方案可以解决这个问题:

安装系统上的OpenSSL库。在Ubuntu / Debian上,您可以使用以下命令

sudo apt-get install libssl-dev

在CentOS / RedHat上,您可以使用以下命令安装OpenSSL:

sudo yum install openssl openssl-devel

如果您无法在系统上安装OpenSSL,可以使用–with-openssl = 选项从源代码构建OpenSSL库。将 替换为OpenSSL源代码的路径。

./configure --with-openssl=/usr/local/src/openssl-1.1.1j

这将在编译期间构建一个静态OpenSSL库以便nginx可以使用它以启用SSL模块。

希望这些解决方案可以帮助您解决问题。

3、./configure: error: the HTTP XSLT module requires the libxml2/libxslt
libraries. You can either do not enable the module or install the libraries.

这个错误是因为您正在尝试编译nginx并启用HTTP XSLT模块,但系统缺少libxml2 / libxslt库。有几种解决方案可以解决这个问题:

安装系统上的libxml2 / libxslt库。在Ubuntu / Debian上,您可以使用以下命令:

sudo apt-get install libxml2-dev libxslt1-dev

在CentOS / RedHat上,您可以使用以下命令安装libxml2 / libxslt:

sudo yum install libxml2 libxml2-devel libxslt libxslt-devel

如果您无法在系统上安装这些库,则需要从源代码构建它们。将libxml2和libxslt源代码下载到本地计算机,然后使用以下命令将它们构建并设置动态链接库:

cd libxml2-2.X.X
./configure --prefix=/usr/local/libxml2
make && make install

cd ../libxslt-1.1.X
export PKG_CONFIG_PATH=/usr/local/libxml2/lib/pkgconfig
./configure --prefix=/usr/local/libxslt --with-libxml-prefix=/usr/local/libxml2
make && make install

执行nginx configure命令时,将–with-http_xslt_module和–with-libxslt= 选项传递给nginx以启用XSLT模块。将 替换为libxslt库的源代码路径。

./configure --with-http_xslt_module --with-libxslt=/usr/local/src/libxslt-1.1.X

希望这些解决方案可以帮助您解决问题。

4、./configure: error: the HTTP image filter module requires the GD library.
You can either do not enable the module or install the libraries.

这个错误是因为您正在尝试编译nginx并启用HTTP image filter模块,但系统缺少GD库。有几种解决方案可以解决这个问题:

通过使用–without-http_image_filter_module选项禁用HTTP image filter模块。

安装系统上的GD库。在Ubuntu / Debian上,您可以使用以下命令:

sudo apt-get install libgd-dev

在CentOS / RedHat上,您可以使用以下命令安装GD库:

sudo yum install gd gd-devel

如果您无法在系统上安装libgd,则需要从源代码构建它。将libgd源代码下载到本地计算机,然后使用以下命令将其构建并安装它:

cd libgd-X.X.X
./configure --prefix=/usr/local/libgd --with-jpeg=/usr/local
make && make install

注意:如果您的系统上没有安装JPEG库,则需要提前安装。

执行nginx configure命令时,将–with-http_image_filter_module和–with-http_gd_module= 选项传递给nginx以启用image filter模块。将 替换为GD库的源代码路径。

./configure --with-http_image_filter_module --with-http_gd_module=/usr/local/src/libgd-X.X.X

希望这些解决方案可以帮助您解决问题。

5、./configure: error: perl module ExtUtils::Embed is required

这个错误是因为您正在尝试编译nginx并启用Perl模块,但系统缺少Perl模块ExtUtils::Embed。使用以下步骤解决此问题:

安装perl模块ExtUtils::Embed。在Ubuntu / Debian上,您可以使用以下命令:

sudo apt-get install libextutils-embed-perl

在CentOS / RedHat上,您可以使用以下命令安装ExtUtils::Embed:

sudo yum install perl-ExtUtils-Embed

执行完成后重新运行nginx configure并尝试编译即可。

希望这些解决方案可以帮助您解决问题。

6、./configure: error: the Google perftools module requires the Google perftools
library. You can either do not enable the module or install the library

这个错误是因为您正在尝试编译nginx并启用Google perftools模块,但系统缺少Google perftools库。使用以下步骤来解决这个问题:

在Ubuntu / Debian上,您可以使用以下命令安装Google perftools库

sudo apt-get install libgoogle-perftools-dev

在CentOS / RedHat上,您可以使用以下命令来安装Google perftools库:

sudo yum install google-perftools google-perftools-devel

执行完成后重新运行nginx configure并尝试编译即可。

希望这些解决方案可以帮助您解决问题。

你可能感兴趣的:(nginx,linux,运维)