Articles of apache 2.4

即使目录存在,也使用FallbackResource

我已经使用非常基本的configuration在Apache 2.4.7上设置了我的虚拟主机: <VirtualHost *:80> ServerName foo.example.com DocumentRoot /var/www/html DirectoryIndex index.php FallbackResource /index.php </VirtualHost> 在文档根下面,我有以下结构: /index.php /help/readme.txt 我提出请求时得到以下结果: /bla -> 200 OK /help/ -> 404 Not Found /help/a -> 200 OK 看起来, /help/目录的存在导致Apache返回404因为那里没有index.php ,但是我希望所有请求都调用/index.php ,从而产生200 OK响应。 我不记得使用mod_rewrite时这是一个问题,但如果可能的话,我更喜欢使用FallbackResource 。 有没有办法来解决这个问题? 更新 它工作,如果我删除DirectoryIndex指令,但遭受五秒延迟问题 。 更新3 我正在运行以下testing环境; 目录结构如下: ./htdocs index.html test/ bla.txt ./conf httpd.conf ./logs httpd.conf的内容是: ServerName apache-bug.local Listen […]

使用Jenkins和Sonar的SSL更正Apache反向代理configuration

我在Apache服务器后面运行两个服务:Jenkins(端口8080)和SonarQube(端口9000)。 我的apacheconfiguration如下所示: <VirtualHost *:80> ServerName server Redirect permanent / https://server.domain.com/ </VirtualHost> <VirtualHost *:80> ServerName server.domain.com Redirect permanent / https://server.domain.com/ </VirtualHost> <VirtualHost *:443> ServerName server.domain.com SSLEngine on SSLCertificateFile /etc/ssl/certs/server.crt SSLCertificateKeyFile /etc/ssl/private/server.key ProxyPass /jenkins http://localhost:8080/jenkins nocanon ProxyPassReverse /jenkins http://localhost:8080/jenkins ProxyPassReverse /jenkins http://server.domain.com/jenkins ProxyPassReverse /jenkins https://server.domain.com/jenkins ProxyPass /sonar http://localhost:9000/sonar nocanon ProxyPassReverse /sonar http://localhost:9000/sonar AllowEncodedSlashes NoDecode ProxyRequests Off ProxyPreserveHost […]

是否可以在Apache中为单个VirtualHost(贵宾犬)设置SSLProtocol?

我试图testing一个Poodle漏洞的修补程序,它涉及到在我的Web服务器上禁用SSLv3。 为了在非生产环境中首先对此进行testing,我将SSLProtocol设置为不同testing服务器的VirtualHost。 我的configuration看起来像这样: <VirtualHost *:443> SSLEngine On SSLProtocol All -SSLv2 -SSLv3 ServerName test.mysite.com # bunch of other stuff omitted </VirtualHost> 然而,即使重新启动Apache,我的testing网站仍然被宣称是脆弱的。 这是否预计工作? 我想知道是否必须在全局sslconfiguration中设置它,或者是否有其他细节导致设置无法使用和/或工作。

在我的Apache2服务器上启用HTTPS后 – 我得到每个请求404错误

好的,所以我从来没有使用SSL / HTTPS的经验,我只处理过标准的HTTP。 最近我开始在一个需要SSL的网站上工作。 所以当然,我已经出去研究如何开始。 我已经到了成功安装SSL证书的阶段 – 绿色挂锁出现,服务器响应端口443上的HTTPS请求。我遇到的问题是,无论我做什么,我都不能让任何页面出现使用HTTPS / SSL,但他们似乎很好的端口80 / HTTP(直到我将HTTPredirect到HTTPS)。 简单地说,我可以访问HTTPS站点,但是我的页面没有被发送,而是为每个请求发送一个404。 /etc/apache2/sites-available/[name].conf <VirtualHost *:80> ServerName [serverName] RewriteEngine On RewriteCond %{HTTP:X-Forwarded-Proto} !https RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=302] </VirtualHost> <VirtualHost *:443> ServerName [serverName] ServerAdmin [email] DocumentRoot [docRoot] # I know the following SSL cert stuff is correct SSLEngine On SSLCertificateFile […]/[domain].crt SSLCertificateKeyFile […]/[certificate].key SSLCertificateChainFile […]/[theotherone].crt ErrorLog […]

如何在不断开SSL连接的情况下正常重启Apache?

我们正在尝试使用如下命令来优雅地重新加载Apache: apache2ctl -k graceful 这对于HTTP用户来说是按预期工作的,并且Apacheconfiguration被重新加载而不影响网站的用户。 但是,我们发现通过HTTPS访问服务器的用户在正常重新加载期间断开连接。 如何在不影响SSL连接的情况下正常重新加载Apache? 如果有帮助,我们在Apache 2.4.20上使用HTTP 2。

SSLCertificateChainFile在Apache 2.4.8 +上的弃用警告

我们为Network Solutions的网站提供SSL证书。 在将Apache / OpenSSL升级到版本2.4.9之后,现在在启动HTTPD时出现以下警告: AH02559: The SSLCertificateChainFile directive (/etc/httpd/conf.d/ssl.conf:105) is deprecated, SSLCertificateFile should be used instead 按照mod_ssl的Apache手册,确实如此: SSLCertificateChainFile已被弃用 当SSLCertificateFile被扩展为也从服务器证书文件加载中间CA证书时,SSLCertificateChainFile在版本2.4.8中变得过时了。 查找SSLCertificateFile的文档,看起来像我只需要用SSLCertificateFilereplace我的调用SSLCertificateChainFile 。 这个改变把我的ssl.conf从这个变成了: SSLCertificateFile /etc/ssl/STAR.EXAMPLE.COM.crt SSLCertificateKeyFile /etc/ssl/server.key SSLCertificateChainFile /etc/ssl/Apache_Plesk_Install.txt 对此: SSLCertificateFile /etc/ssl/STAR.EXAMPLE.COM.crt SSLCertificateFile /etc/ssl/Apache_Plesk_Install.txt SSLCertificateKeyFile /etc/ssl/server.key …但这不起作用。 Apache只是拒绝启动没有任何错误信息。 我不知道还有什么可以尝试的,因为我不熟悉mod_ssl或者SSL证书。 我记得我们需要为Internet Explorer添加Apache_Plesk_Install.txt文件,以便在我们的网站上没有SSL警告,但除此之外 ,我不知道。 任何帮助将不胜感激。 谢谢。

如果我的CA不支持它,我如何设置证书透明度?

我想你们中的很多人其实都听说过Google的证书透明度计划。 现在这个程序涉及到一些CA颁发的所有证书的公开日志。 由于这是一些工作量,并非所有的CA都已经设置好了。 例如, StartCom已经表示,从他们身边设置它很困难,一个适当的设置会花费数月时间。 同时所有的EV证书都被Chrome“降级”为“标准证书”。 现在有人说有三种方式提供必要的logging来防止降级: x509v3的扩展,显然只有CA才有可能 TLS扩展 OCSP装订 现在我认为第二个和第三个需要发行CA的(不?)交互。 所以问题是: 如果我的CA不支持它,我可以使用我的apache web服务器设置证书透明度支持,如果有可能,我该怎么做?

为Socket.IO 1.0configurationApache 2.4 mod_proxy_wstunnel

我正在尝试使用mod_proxy_wstunnel将Apache 2.4configuration为将socket.io的websocket连接代理到node.js websocket服务器。 我们使用socket.io 0.9可以正常工作,但是在1.0发行版中,它们将套接字端点更改为查询参数,现在我在使用正确的代理指令configurationapache时遇到了问题。 所有对/socket.io/?EIO=N&transport=websocket (其中N是任何数字,通常为2)的请求都需要被转发到ws://localhost:8082/socket.io/ ,但是所有其他的请求都需要被转发到http://localhost:8082/socket.io/ 。 我试过以下两种configuration的变体: ProxyPass /socket.io/?EIO=2&transport=websocket http://localhost:8082/socket.io/?EIO=2&transport=websocket ProxyPassReverse /socket.io/?EIO=2&transport=websocket http://localhost:8082/socket.io/?EIO=2&transport=websocket ProxyPass /socket.io/ http://localhost:8082/socket.io/ ProxyPassReverse /socket.io/ http://localhost:8082/socket.io/ 。 RewriteRule /socket.io/?EIO=([0-9]+)&transport=websocket ws://localhost:8082/socket.io/ [QSA,P] ProxyPass /socket.io/ http://localhost:8082/socket.io/ ProxyPassReverse /socket.io/ http://localhost:8082/socket.io/ 我从search结果中发现,ProxyPass和Locations不能定位查询string,那么在这里还有其他的select吗? path被硬编码到socket.io中,所以分叉整个库的时候我无法改变它们。

如何在Ubuntu 14.04服务器上调整Apache

目前在Ubuntu 14.04上我的Apache 2(确切地说是Apache 2.4.7),我有这样的设置: /etc/apache2/mods-enabled/mpm_prefork.conf <IfModule mpm_prefork_module> StartServers 20 MinSpareServers 100 MaxSpareServers 250 MaxRequestWorkers 150 MaxConnectionsPerChild 0 </IfModule> 该服务器是一个8GB(RAM)亚马逊服务器,除了为某些Google广告系列加载三页registry单外, 我在网上发现了一个名为apachetuneit.sh的脚本,但之后Apache报告了这个错误: [2015年4月21日16:45:42.227935 2015年] [mpm_prefork:错误] [pid 1134] AH00161:服务器达到MaxRequestWorkers设置,考虑提高MaxRequestWorkers设置 我如何判断如何设置这些设置? 我只是问如何调整Apache 2.4,没有别的。 这就是为什么这个问题不同于这个问题 。

“AH00485:记分牌已满,MaxRequestWorkers没有”的含义是什么?

我的环境 CentOS 6.4 X86_64 Apache 2.4.4 PHP 5.4.16(FPM) 2个Intel Xeon E5-2620 @ 2.00GHz(8核,每个处理器16个线程) 48GB RAM注册内存。 3硬盘15RPM 145GB在RAID0(由BIO 有趣的variables <IfModule mpm_event_module> StartServers 2 ThreadLimit 196 MinSpareThreads 96 MaxSpareThreads 192 ThreadsPerChild 96 MaxRequestWorkers 192 MaxConnectionsPerChild 96 </IfModule> Apache服务器状态 服务器版本:Apache / 2.2.4(Unix)OpenSSL / 1.0.1e mod_fastcgi / mod-fastcgi-SNAP-0910052141 服务器内置:2013年5月24日16:48:07 现在时间:星期一,17-Jun-2013 09:48:11 COT 重新开始时间:星期一,17-Jun-2013 08:35:14 COT 父服务器configuration。 一代:1 父级服务器MPM生成:0 服务器正常运行时间:1小时12分57秒 […]