Articles of apache 2.4

在同一台服务器上同时安装并运行apache2.2和apache2.4

我们需要在同一个VM上运行Apache 2.2和Apache 2.4 Web服务器。 需求由以下创build: 要求托pipe一个不支持Apache 2.4的Oracle WebGate模块(我们使用Red Hat提供的2.2 httpd) 与WebGate处理关联使用Apache 2.4本地会话的要求 对我们可以使用的虚拟机数量的限制(要求两个虚拟机都在同一个虚拟机上) 这一切都必须在RHEL 5.8 VM上进行(请注意,RHEL5没有适用于Apache 2.4的Red Hat RPM(实际上也不是6)。 我们的一般意图是让2.2实例作为localhost-port-listening 2.4实例的反向代理(本身充当我们原始服务器的反向代理)。 configuration避免端口冲突,处理代理等是不是一个问题,我很熟悉这样的。 在不确定的情况下,同时安装和运行两个服务器版本是一般的方法。 有没有人做过这个? 如果是这样,你的一般方法是什么? 这两个版本安装在一起干净地工作,还是你必须例如chroot一个创build图书馆之间的分离? 还是你静态链接2.4二进制文件所需的一切,或者什么? 我们在执行模式下运行SELinux – 是否有任何意义要在这方面意识到? 对于那些做过类似事情的人,我在Google上空着空洞,希望有人在这里。 谢谢!

Apache 2.4:与.htaccess的公共子目录

我目前正在升级到Apache 2.4。 现在困扰我的是如何仅使用.htaccess创build公共子目录。 外部目录由AuthType Basic保护 以前,该目录包含以下.htaccess: Satisfy Any Allow from all 我不知道如何在Apache 2.4中重现这一点。 我尝试了以下的任何组合,没有运气: AuthType None Require all granted AuthMerging Or

从403 ErrorDocument 403错误

我在我的Apache 2.4.7安装中有以下configuration脚本: <Directory "/www"> Options Indexes FollowSymLinks AllowOverride All <RequireAll> Require all granted Require not ip ip.range.A ip.range.B </RequireAll> RewriteEngine On RewriteRule ^faq/(\w+)/(\d+)/?$ faq.php?code=$1&num=$2 [NC] ErrorDocument 403 /www/faq.php?code=web&num=403 </Directory> 而且,当我尝试使用其中一个阻止的IP地址查看页面时,我收到此错误: 此外,尝试使用ErrorDocument处理请求时遇到403禁止错误。 因为我想为来客提供两种403服务; 我必须redirectIP范围A和B限制的用户才能显示faq/WEB/403/页面。 有没有办法阻止用户使用这些IP的访问,并显示他们我的自定义ErrorDocument页面? 我尝试使用以下代替requireAll标记( 在RewriteCond指令中定义): RewriteCond %{REMOTE_HOST} ^ip.range.A [OR] RewriteCond %{REMOTE_HOST} ^ip.range.B RewriteRule /faq/WEB/403/ [L,R] 但无济于事。 用户可以在后一种情况下自由访问页面。 当前configuration文件如下(并且没有用户被阻止访问网页): <Directory "/www"> Options Indexes FollowSymLinks AllowOverride […]

为什么我们需要在httpd中需要时允许?

我们有指令Require和Allow可以在httpd.conf中使用。 不会Require ip address工作,如Allow from address ; Deny from all Allow from address ; Deny from all ? 正如我们在本文档中所看到的,由mod_access_compat提供的Allow , Deny和Order指令已被弃用,并将在未来的版本中消失。 你应该避免使用它们,并避免过时的教程推荐使用它们。 为什么我们仍然需要允许?

强制Apache 2.4使用mod_cachecaching具有查询string的文件,而不会过期

我需要得到mod_cache_diskcaching包含查询string的网站。 问题在于,它是IIS上的一个供应商产品,我们试图通过mod_proxy进行caching,并且不包含expires头文件。 我意识到这个问题违反了几个RFC,这就是为什么Apache不默认。 有没有办法强制的Apache 2.4.xcaching与查询string,并没有过期头? 这种configuration将caching,但当然不尊重? 它caching大部分项目的错误内容。 CacheEnable disk https:// CacheEnable disk / CacheRoot /var/cache/mod_proxy/ CacheDirLevels 4 CacheDirLength 5 CacheIgnoreCacheControl On CacheIgnoreNoLastMod On CacheIgnoreHeaders None CacheMaxFileSize 100000000 CacheMinFileSize 1 CacheMaxExpire 1209600 CacheDefaultExpire 3600 CacheIgnoreQueryString On CacheStoreNoStore On CacheStorePrivate On 如果我将CacheIgnoreQueryString更改为Off,它将开始发出关于expires标题的错误。 AH00768:caching:/view.image?Id=1114没有caching。 原因:查询string存在但没有明确的到期时间,

使用会话cookie模块编译Apache 2.4.9

我使用以下configuration编译了我的Apache版本: ./configure \ –prefix=/usr/local/apache2 \ –sysconfdir=/etc/apache2 \ –enable-so \ –enable-info \ –enable-session \ –enable-session-cookie \ –enable-lua \ –enable-luajit \ –enable-proxy \ –enable-mods-shared=all \ –with-included-apr make sudo make install 上述过程完成后,当我尝试启动我的服务器 /usr/local/apache2/bin/apachectl -k start 我收到以下错误: httpd: /etc/apache2/httpd.conf第136行的语法错误:无法将modules/mod_session_cookie.so加载到服务器: /usr/local/apache2/modules/mod_session_cookie.so :undefined symbol: ap_hook_session_save 在检查httpd.conf文件时,我看到以下内容: 135 #LoadModule session_module modules/mod_session.so 136 LoadModule session_cookie_module modules/mod_session_cookie.so 137 LoadModule session_dbd_module modules/mod_session_dbd.so 数字描述文件中的行号。 在取消注释行# 135并再次尝试显示: […]

通过.htaccess更改MaxRequestLen的值?

是否有可能改变MaxRequestLen的价值没有根访问我的Apache 1and1.co.uk专用服务器(托pipe版本)? 我希望能够通过.htaccess更改值? 有谁知道这是可能的吗? 我调查了是否可以通过php.ini文件更改该值,但MaxRequestLen是服务器configuration而不是PHPvariables。 请注意服务器上启用了纯CGI(服务器没有快速CGI)。 更新: <IfModule mod_fcgid.c> MaxRequestLen 31457280 </IfModule> 会这样的工作在.htaccess?

Apache SNI,2个域,2个证书,parsing到相同的文档根目录

我目前遵循以下指南: https : //www.digitalocean.com/community/articles/how-to-set-up-multiple-ssl-certificates-on-one-ip-with-apache-on-ubuntu- 12-04 到目前为止安装已经没有问题了。 我正在使用我在http://www.startssl.com/?app=21注册的两个1级证书。 每个映射到它自己的(正确的)域。 问题是:去https下的域名parsing为同一个文档根目录,也就是说,如果我去https://backend.domain2.com ,我正确地来到它的VirtualHostconfiguration中指定的文档根目录。 但是,如果我访问https://email.domain1.com ,则会将其发送到backend.domain2的根目录,URL保持不变,并显示SSL证书无效的警告。 检查“无效”证书显示它是连接到后端。域2的。 我在这里做错了什么? 这两个域的VirtualHostconfiguration如下: <IfModule mod_ssl.c> <VirtualHost *:443> # The ServerName directive sets the request scheme, hostname and port that # the server uses to identify itself. This is used when creating # redirection URLs. In the context of virtual hosts, the ServerName # […]

“无法打开日志”在Apache错误日志debian

[已解决]更高的文件描述符限制解决了这个问题 APACHE_ULIMIT_MAX_FILES='ulimit -n 65536' 我无法启动apache2服务: [root@myhost ~]# service apache2 start [….] Starting web server: apache2[Thu May 22 00:32:41 2014] [warn] NameVirtualHost *:443 has no VirtualHosts Action 'start' failed. The Apache error log may have more information. failed! [root@myhost ~]# /var/log/apache2/error.log [root@myhost ~]# tail -200 /var/log/apache2/error.log (…) Unable to open logs Unable to open logs Unable […]

Apache / abtesting麻烦 – apr_socket_recv:连接被拒绝(111)

我有一个由abtestingApache服务器2.4的问题。 Apache服务器作为服务在Windows上运行,我从另一台Linux上的服务器上testing它。 我写: ab -n 1000 -c 1000 "http://xxxx/image.jpg" 输出: This is ApacheBench, Version 2.3 <$Revision: 655654 $> Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Licensed to The Apache Software Foundation, http://www.apache.org/ Benchmarking xxxx (be patient) apr_socket_recv: Connection refused (111) 当-n和-c是100时,没有问题。 之前我已经testing过了,一切正常,但一下子就开始崩溃了。 我尝试了一切,甚至使用mpm_winnt_module ,但它没有帮助。 (我在Apache中使用默认值。) 我想这不是一个networking问题。 在Wireshark中我可以看到通信在一段时间之后被重置。 据我说Apache是​​有罪的。