Ubuntu 16 Server-load_module modules/ngx_http_headers_more_filter_module.so
は、フレッシュインストールでは機能しません。
root@ /etc/nginx # nginx -V
nginx version: nginx/1.15.8
built by gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.10)
built with OpenSSL 1.0.2g 1 Mar 2016
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fPIC' --with-ld-opt='-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -pie'
nginx-extras
をインストールしようとすると、依存関係エラーが表示されます。
root@ /etc/nginx # apt-get install nginx-extras
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
nginx-extras : Depends: nginx-common (= 1.10.3-0ubuntu0.16.04.3) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
依存関係を満たすために、nginx 1.10に戻ります
/etc/apt/sources.list
ファイルに追加してnginxをインストールしました
# nginx
deb http://nginx.org/packages/mainline/ubuntu/ xenial nginx
deb-src http://nginx.org/packages/mainline/ubuntu/ xenial nginx
誰かが私の問題に光を当てることはできますか?
これは、Ubuntu 16.04でmore_set_headersを有効にするために行ったものです。
# I backed up my nginx folder to home
tar -czvf /home/nginx.tar.gz /etc/nginx
# I removed then purged nginx - not sure if both are necessary
Sudo apt remove nginx
Sudo apt autoremove
Sudo apt purge nginx
# I removed all nginx entries from /etc/apt/sources.list
nano /etc/apt/sources.list
# I did an apt-update and installed nginx
Sudo apt update
Sudo apt upgrade
Sudo apt install nginx
nginx -v
# I upgraded nginx to the latest stable
Sudo apt install software-properties-common
nginx=stable
Sudo add-apt-repository ppa:nginx/$nginx
Sudo apt update
Sudo apt dist-upgrade
nginx -v
# I installed nginx-extras
Sudo apt install nginx-extras
/etc/nginx/nginx.conf
を編集し、最初の行として追加しましたload_module modules/ngx_http_headers_more_filter_module.so;
次に、httpブロックに追加しましたmore_set_headers Server: Uber;
私の構成がnginx -t
で問題ないかどうかを確認しましたservice nginx restart
を使用してサーバーを再起動しました
これが誰かを助けることを願っています
Amazon Linux(Centos/Red Hatと同様)でこれをどのように実行したかについての詳細は、私のチュートリアル here を参照してください。これはしばらく前に書いたもので、時々更新していますが、完全ではないかもしれません。私はそれをテストし、時間のあるときにもう一度更新します。
cd /home/ec2-user
mkdir nginx-build
cd nginx-build
service nginx stop
yum groupinstall "Development Tools"
yum install pcre-devel zlib-devel openssl-devel
wget http://nginx.org/download/nginx-1.15.8.tar.gz
wget http://labs.frickle.com/files/ngx_cache_purge-2.3.tar.gz
git clone https://github.com/openresty/headers-more-nginx-module.git
tar -xzf nginx-1.15.8.tar.gz
tar -xzf v0.33.tar.gz
# Includes some machine specific optimisations
./configure --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-http_ssl_module --with-http_realip_module --with-http_gunzip_module --with-http_gzip_static_module --with-threads --with-file-aio --with-http_v2_module --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=native' --add-module=../ngx_cache_purge-2.3 --add-module=../headers-more-nginx-module
make && make install
make clean (NB: optional)
service nginx start