Apache 代理服务器删除双斜杠
Apache Proxy Server Removing Double Slashes
已在我的服务器上将 thumbor 配置为自托管 CDN。但是,我通过它的任何 URL 都合并了双斜杠,结果我收到错误 400。我正在使用 apache2.4 作为反向代理。这是我的虚拟主机配置。
<VirtualHost *:443>
AllowEncodedSlashes NoDecode
ProxyPreserveHost On
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Proxy *>
Order allow,deny
Allow from all
</Proxy>
ProxyPass / http://localhost:8888/
ProxyPassReverse / http://localhost:8888/
ServerName images.example.com
SSLCertificateFile /etc/ssl/example.com/fullchain.pem
SSLCertificateKeyFile /etc/ssl/example.com/privkey.pem
</VirtualHost>
尝试使用 thumbor 提供图像,所以如果我将 link
https://images.example.com/unsafe/https://example.com/uploads/media/test.jpg
我正在拇指或
https:/example.com/uploads/media/test.jpg(*.*.*.*)
双斜杠已合并为导致错误的双斜杠。我怎样才能避免这种行为?
诀窍是 nocanon
选项,您可以在 documentation.
中找到
如果添加此选项,将保留原始 url。
ProxyPass / http://localhost:8888/ nocanon
已在我的服务器上将 thumbor 配置为自托管 CDN。但是,我通过它的任何 URL 都合并了双斜杠,结果我收到错误 400。我正在使用 apache2.4 作为反向代理。这是我的虚拟主机配置。
<VirtualHost *:443>
AllowEncodedSlashes NoDecode
ProxyPreserveHost On
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Proxy *>
Order allow,deny
Allow from all
</Proxy>
ProxyPass / http://localhost:8888/
ProxyPassReverse / http://localhost:8888/
ServerName images.example.com
SSLCertificateFile /etc/ssl/example.com/fullchain.pem
SSLCertificateKeyFile /etc/ssl/example.com/privkey.pem
</VirtualHost>
尝试使用 thumbor 提供图像,所以如果我将 link
https://images.example.com/unsafe/https://example.com/uploads/media/test.jpg
我正在拇指或
https:/example.com/uploads/media/test.jpg(*.*.*.*)
双斜杠已合并为导致错误的双斜杠。我怎样才能避免这种行为?
诀窍是 nocanon
选项,您可以在 documentation.
如果添加此选项,将保留原始 url。
ProxyPass / http://localhost:8888/ nocanon