我们希望能够在Apache中基于User-Agent设置Cache-Control头 例如,如果User-Agent包含子stringfoo我们要将Cache-Control设置为10分钟。 但是如果没有设置为1天。 search周围,我发现BrowserMatch ,但似乎只设置环境variables: BrowserMatch foo short-live # Sets environment variable short-live 但我想有条件地应用像Header set …或ExpiresDefault …指令ExpiresDefault … 有没有办法有条件地申请声明? 就像是: <FilesMatch "\.(jpg|jpeg|gif|png|js|css)$"> Header set Cache-control "max-age=86400" <IfBrowser "foo"> Header set Cache-control "max-age=600" </IfBrowser> </FilesMatch> 请注意, IfBrowser是虚构的。 有没有真正的指令可以这样使用? 谢谢! PS这是从https://stackoverflow.com/questions/5708090/contional-declaration-in-apache-httpd转发,因为它收到了一点活动。
在Ubuntu 10.10上安装phpMyAdmin,运行apache2。 phpMyAdmin驻留在/ usr / share /中,并且可以访问,因为在apache2中有别名。 我想为它添加一个.htaccess文件,但是我不确定放置它的位置,或者我应该使用其他一些方法来阻止网站被别人以外的人访问(使用密码)。
我们的客户端有一个基于客户端的Ruby on Rails应用程序(即在控制器和视图中处理很less),在服务器堆栈中使用Apache和Passenger。 我们看到每个用户连接大约需要2MB。 这是合理的,还是我们在configuration中做错了? 我们试图估计每台服务器可以支持多less用户。 谢谢!
我使用Rackspace IUS社区存储库的PHP 5.1在RedHat Enterprise 5.5上运行Apache。 偶尔,我有8 +负载的服务器尖峰。 top显示httpd.worker消耗120-150%的CPU,但命中似乎没有那么快。 我注意到,当这种情况发生时,我们的工艺语法URL似乎不断出现。 我也有一个核心规则集安装了mod_security。 我疯狂地想弄清楚是什么导致了高CPU使用率。 我的主要嫌疑人是PHP和mod_security。 我有一个负载峰值期间的以下oprofile输出forms,但它不告诉我哪个进程正在调用libpcre: % opreport CPU: Intel Architectural Perfmon, speed 2793.09 MHz (estimated) Counted CPU_CLK_UNHALTED events (Clock cycles when not halted) with a unit mask of 0x00 (No unit mask) count 100000 CPU_CLK_UNHALT…| samples| %| —————— 7061182 91.9105 libpcre.so.0.0.1 206901 2.6931 php-cgi 142239 1.8514 mod_security2.so […]
我们build立了一个特殊的兴趣社交networking,需要为webapp服务器设置适当的服务器设置。 我们已经为webapp 5物理服务器 (2xE5645CPU,24GB Ram,RAID,4xGbit NIC)提供服务,其中一个服务器需要为我们的移动访问者(iOS,Android)提供API。 我们的web应用程序需要PHP,APC,Memcached和MySQL。 此外,我们有4个更多的物理服务器(2xE5620,12 GB RAM,RAID,4x千兆网卡): 彗星推服务器(聊天的自定义服务器) 队列/邮件服务器(beanstalkd) 静态networking服务器(G-WANnetworking服务器),带有12x2TB的2xDAS(Raid 6总共40TB) 专门用于HTTPS的Apache web服务器(如果SSL受保护的页面将放置在LB集群上,此服务器也可用于LB群集,这是否更好?)。 一开始我们只想在LB / HA上安装webapp服务器,因为目前我们没有更多的服务器可用。 最后是一个低成本的服务器(X3430,4 GB Ram,RAID,2 Gbit NIC),用于监控所有硬件。 我们有2台HP Procurve 2900pipe理型48端口千兆交换机。 上述所有设备都保留在我们的networking中心机架中。 我们在所有服务器上使用RHEL 6。 我有很多想法,但是我不确定哪个是最好的方法。 我的方向是在两个盒子上安装HA Proxy和Apache webserver,在两个盒子上安装MySQL数据库服务器,并在API和Web服务上使用Apache和MySQL。 使用其中一台专用networking的交换机连接所有服务器并用于内部通信(MySQL,上传后的文件传输)。 将每个服务器的多个NIC端口连接到交换机是否有帮助? HA Proxy是我们案子的最佳方式吗? 或者在2或3盒上使用nginx会更好,并且使用它来进行负载均衡和服务PHP,并且对于HA部分有LVS或类似的东西? 我为所有的解决scheme开放,5 + 1服务器可以灵活使用。 谢谢你的帮助。 更新:经过更多的研究,我认为这将是很难find一个解决scheme有所有服务器HA。 我的设置的实际想法是: nginx作为负载均衡的代理(我将使用中规格框之一) 3私人networking上的Apachenetworking服务器 2私有网上的MySQL服务器主/从 在上面的解决scheme中,Apache Web服务器也将托pipe支付SSL站点,我不确定是否nginx可以处理这个不同的后端服务器的SSL证书。 更新2:我做了更多的研究,Redhat提供了一个基于LVS的负载平衡附加组件。 http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Virtual_Server_Administration/ch-lvs-overview-VSA.html这个插件看起来不错,但我仍然不知道哪个方向是正确的一? 在前面使用nginx还是使用LVS或其他的更好? 有人告诉我,我可以使用现有的HP Procurve […]
好的,所以我在两个Windows 7盒子上运行Apache作为testing环境。 我们的想法是将所有项目保留在共享networkingpath上,以便随时通过我的桌面或笔记本电脑进行访问。 运行Apache作为控制台使用我的用户帐户, MyAccount ,访问networkingpath提供以下错误: Warning: DocumentRoot [C:/EMMA/users/*MyAccount*/Documents/*MyWebsite*/] does not exist 我所做的所有事情都包含在httpd.conf的httpd-vhosts.conf文件中,并将以下内容添加到vhostsconfiguration中: <VirtualHost *:80> DocumentRoot "\\EMMA\users\MyAccount\Documents\MyWebsite" ServerName MyWebsite ErrorLog "logs\MyWebsite-error.log" CustomLog "logs\MyWebsite-access.log" common <directory "\\EMMA\users\MyAccount\Documents\MyWebsite"> Options Indexes FollowSymLinks AllowOverride all Order Deny,Allow Deny from all Allow from 127.0.0.1 </directory> </VirtualHost> Windows主机文件安装正确,因为改变本地apache htdocs的path工作正常,我可以访问本地网站没有问题的浏览器。 我的困惑就是这样。 apache手册指出,apache不能以没有访问networkingpath的用户身份访问networkingpath。 但是,由于apache控制台正在以MyAccount的方式运行,它肯定可以访问networkingpath,为什么不能正常工作呢? 我已经检查了进程菜单,它绝对在MyAccount下运行,而不是系统。 出于某种原因,基于错误消息apache试图查看本地目录,而不是networking目录? 有任何想法吗? 如果我能弄清楚为什么apache试图访问作为本地path的networkingpath,我认为应该修复它,但我在这里完全损失。
鉴于我们有Apache Web服务器和一个发送几个stream水线请求的客户端。 根据RFC服务器应该返回的请求发送相同的顺序响应。 那么,这是否意味着服务器进程的请求顺序,或者它仍然会并行处理它们,只有在输出时才等待缓慢的请求? 如果它们被并行处理,那么稍后发送的更快的请求(就所需的服务器时间而言)将会提前完成,然后缓慢的请求。 例如。 请求1需要60秒处理请求2 – 5秒请求3 – 5秒请求4 – 30秒请求5 – 5秒 所有这5个请求都是相继发送的。 请求2,3,5是否会在缓慢的请求1和5或服务器等待每个请求之前完全处理(但不能返回),然后再开始处理另一个请求?
我正在寻找安全使用suexec在Apache下运行的一些网站。 目前php正在执行的文件的用户/组执行。 这在我看来,不够安全。 它可以阻止互相干扰的虚拟主机,但不会阻止正在使用的虚拟主机中的任何地方写入恶意代码。 我以为有可能将脚本作为nobody / vhost组运行,这样vhost用户仍然可以完全访问vhost目录,但执行php只能使用g + w写入文件,并且用g + x执行文件。 这个我认为应该停止任意写在web目录从受损的PHP。 只是想知道这是疯狂的,荒谬的,愚蠢的? 当然,这将在现有的安全措施之上完成。
我已经完成了在Apache2上设置和安装我的VPS上的redmine项目跟踪web应用的步骤,但是我正在运行一种情况,而不是显示redmine应用,我只能看到目录内容: 有谁知道可能是什么问题? 我不确定还有哪些其他文件可以用来诊断正在发生的事情。 谢谢! # # Based upon the NCSA server configuration files originally by Rob McCool. # # This is the main Apache server configuration file. It contains the # configuration directives that give the server its instructions. # See http://httpd.apache.org/docs/2.2/ for detailed information about # the directives. # # Do NOT simply read […]
我们有一个应用程序,位于使用mod_proxy的Apache实例后面,将请求传递给正确的应用程序服务器。 我们的应用程序在直接查询时正确返回Connection: Keep-Alive ,但mod_proxy正在清理标题。 我做了一些阅读,一些人build议客户端需要设置一个Proxy-Connection: Keep-Alive的代理关于这一点,但也没有工作。 有可能有持久连接代理的Apache?