Articles of apache 2.2

具有客户端证书性能的apache httpd ProxyPass

我们在这里有一个在wildfly 9上运行的WebService。Web服务只能通过ssl(https)使用,并且需要客户端证书。 如果我们在我们的testing用例中更改wildfly将直接与客户进行通信的wildflyconfiguration(意味着wildfly将处理https连接,并且还将检查客户端证书),则一个客户端可以每秒发出12到15个请求(包括得到服务器的答案)。 但是,如果我们在wildfly前放置一个apache httpd(在CentOS6上的V2.2)代理(然后它将处理https SSL的东西,并将检查客户端证书),然后客户端可以(在同一个testing用例中)只有2到5每秒请求数。 httpd代理的configuration是: Listen 58443 NameVirtualHost *:58443 <VirtualHost *:58443> # server SSL settings SSLEngine on SSLProtocol all -SSLv2 -SSLv3 SSLHonorCipherOrder On SSLCipherSuite ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AES:RSA+3DES:!ADH:!AECDH:!MD5:!DSS # Server Certificate: SSLCertificateFile /etc/letsencrypt/live/mydomain.de/cert.pem # Server Private Key: SSLCertificateKeyFile /etc/letsencrypt/live/mydomain.de/privkey.pem # Server Certificate Chain: SSLCertificateChainFile /etc/letsencrypt/live/mydomain.de/chain.pem Header always set Strict-Transport-Security "max-age=315360000" # Client certifacte authentication # Certificate […]

Apache + MOD_JK:重写url+ ProxyPassing通过AJP

我有一个Apache 2.4.23 + OpenSSL 1.0.2j正面服务器。 然后我安装了Tomcat 7的另一台服务器。 这个想法是,Apache在*:443上有一个VHOST,它使用ProxyPass根据指定的URL通过AJP发送请求到Tomcat服务器。 这是我的vhosts.conf文件(它有SSLconfiguration,因为我不想使用httpd-ssl.conf文件,因为我必须改变很多东西),根据这个网站: https://mozilla.github.io/server-side-tls/ssl-config-generator/ ################################################################################################################## # VHOSTS HTTP # redirect all HTTP to HTTPS (optional) <VirtualHost *:80> ServerAlias * RewriteEngine On RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [redirect=301] </VirtualHost> ################################################################################################################## # VHOSTS HTTPS Listen 443 # modern configuration, tweak to your needs SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1 SSLProxyProtocol all -SSLv3 -TLSv1 -TLSv1.1 […]

如何计算超时错误(504),日志中没有

我在我的网站上遇到了很多超时错误(504)。 我查了几乎所有的日志,找不到任何东西。 有两个网站指向相同的networking应用程序,只有一个遇到错误。 即使一个网站正在返回超时错误,另一个也会正常工作。两个网站使用相同的代码。只有拥有stream量的网站才会返回超时错误。 网页应用程序在symfony框架中编码。 我检查了mysql的慢日志,那里是空的。还检查了mysqld日志,并没有什么表明超时 我应该如何继续寻找这个问题?

“Using-Default-VirtualHost”和“Using-Correctly-Named-VirtualHost”有什么区别?

结论:我相信我编译Apache时,我的openssl版本不匹配。 它现在有效; 我用已经安装的openssl重新编译了它。 感谢你的帮助,不信的人。 附加信息:我从tomcat连接器的server.xml中找出了另一个相关的设置。 所以,当域错误的时候,tomcat处理每个部分,并且域没有错,tomcat和apache同时处理,这可能是不同版本的openssl的问题。 …或不。 我知道这个问题很奇怪,但我无法想象有什么不同。 基本信息: 服务器在http://连接中正常工作。 (domain:test.domain.com)(Apache 2.2.31(用openssl 1.0.1u编译),Tomcat(6.0.35,之前已经安装) 我已经有* .domain.comauthenticationhttps://连接,我已经在'service.domain.com',所以“https:// service.domain.com”已经在其他服务器/机器/ IP 最后,我试图安装SSL到“test.domain.com”以允许https://连接。 问题: 我发现.. 如果我把“.conf”设置错了, #Wrong.conf <VirtualHost *:443> ServerName testy.domain.com #whatever, but not 'test.domain.com' …. </VirtualHost *:443> 正在工作时,我连接https:// test.domain.com。 (它将使用默认的VirtualHost;只有一个*:443,当我删除了虚拟主机,我得到错误,我无法连接。)没有问题,我得到完美的连接和authentication,我可以阅读我想要的网页。 但是,如果我正确设置了“.conf” #Correct.conf <VirtualHost *:443> ServerName test.domain.com … </VirtualHost *:443> 我无法连接https:// test.domain.com。 当我用其他工具检查时,详细的信息,如curl,动词, 当我用#Wrong.conf使用curl的时候 * TLSv1.2 (OUT), TLS handshake, Client […]

redirect,更改URL或redirectHTTP到HTTPS的Apache – 你想知道的所有关于Mod_Rewrite规则,但不敢问

这是关于Apache的mod_rewrite的典型问题 。 更改请求URL或将用户redirect到与原始请求不同的URL是使用mod_rewrite完成的。 这包括诸如: 将HTTP更改为HTTPS(或其他方式) 将请求更改为不存在的页面以replace新的replace。 修改URL格式(例如?id = 3433到/ id / 3433) 基于引用者基于浏览器呈现不同的页面,基于月球和太阳下的任何可能。 任何你想搞乱的URL 一切你想知道Mod_Rewrite规则,但不敢问! 我怎样才能成为写mod_rewrite规则的专家? mod_rewrite规则的基本格式和结构是什么? 我需要掌握哪些正则expression式的forms/风格? 编写重写规则时最常见的错误/陷阱是什么? 什么是testing和validationmod_rewrite规则的好方法? 是否有我应该知道的mod_rewrite规则的SEO或性能影响? 有没有常见的情况下,mod_rewrite似乎是正确的工具,但不是? 什么是一些常见的例子? 一个地方来testing你的规则 htaccesstesting仪网站是一个很好的地方玩你的规则和testing。 它甚至显示debugging输出,所以你可以看到什么匹配,什么没有。

在Apache上redirect不工作

我正尝试在Ubuntu机器上使用Apache在我的域中为我的节点应用程序创build一个子域。 这是我的app.conf ServerName mysubdomain.domain.com.br DocumentRoot /var/www/html/app/ ProxyRequests Off ProxyPreserveHost On <Proxy *> Order deny,allow Allow from all </Proxy> <Location "/"> ProxyPreserveHost On ProxyPass http://mypublicip:3000/ ProxyPassReverse http://mypublicip:3000/ </Location> ErrorLog ${APACHE_LOG_DIR}/bot_error.log CustomLog ${APACHE_LOG_DIR}/bot_access.log combined 但是当我访问mysubdomain.domain.com.br时,我从/ var / www / html而不是托pipe应用程序获取所有文件的列表。 当我访问myip:3000我得到应用程序运行。 我怎样才能解决这个问题?

Phusion Passenger未定义符号ap_log_error和重复的Apache版本

我尝试在CentOS 6上安装Phusion Passenger。按照https://www.phusionpassenger.com/library/install/apache/install/oss/el6/上的安装说明 最后一步是重新启动Apache,我得到了.. $ sudo service httpd restart Stopping httpd: [FAILED] Starting httpd: httpd: Syntax error on line 229 of /etc/httpd/conf/httpd.conf: Cannot load /usr/local/rvm/gems/ruby-2.2.2/gems/passenger-5.1.1/buildout/apache2/mod_passenger.so into server: /usr/local/rvm/gems/ruby-2.2.2/gems/passenger-5.1.1/buildout/apache2/mod_passenger.so: undefined symbol: ap_log_error_ [FAILED] 我核实发现mod_passenger.so是在错误信息目录中存在的。 然后我尝试用下面的命令进行validation,并得到这样的东西.. Final autodetection results * Found Apache 2.2.15! Information: apxs2 : /usr/bin/apxs Main executable: /usr/sbin/httpd Control command: /usr/sbin/apachectl Config file : /etc/httpd/conf/httpd.conf […]

寻找一个服务器/代理,可以根据客户的IPdynamic地将请求路由到后端服务器

当请求到达代理/服务器时,根据请求者的IP,请求将被路由到特定的后端。 代理需要从中央键值存储获取目标后端IP,这是系统的一个要求。 我已经testing了nginx,但是proxy_pass需要是静态的,并且找不到实现这个目标的方法。 谢谢。

stickysession不能在Apache和两个Glassfish实例中正常工作

我有两个应用程序在两个Glassfish实例中运行,我configuration我的Apache使用sticky session如下所示: ProxyPass / balancer://Appcluster/ stickysession=JSESSIONID 但是这并不是100%正确的,当客户端从App1转到App2时,它会改变一些实例。 我检查我的导航器中的cookies显示我这样的事情: 我在web.xml发现了另一个configuration,如下所示: <session-config> <session-timeout> 30 </session-timeout> <cookie-config> <path>/</path> </cookie-config> </session-config> 所以当我这样做这样的path,每件事情都很好,但它创造了一个新的上下文之间的每个导航这两个应用程序之间。 现在我configuration我的GlassFish并设置App1像一个默认的Web模块 ,这工作正常,上下文是一样的,服务器创build一个新的cookie像这样: 但是,当我尝试连接没有默认的Web模块 ,它使用两个实例。 你能否提出Apache和Glassfish的正确configuration以在集群环境中运行多个应用程序? 编辑 我通知了一些事情,所以当客户端从App1到App2和VS,每次创build一个新的cookie如下: +——-+—————————————-+ | APP | Cookie | +——-+—————————————-+—–+ | app1 | b5a1cd4befdc306f6e569d835b5e.instance2 | New | +——-+—————————————-+—–+ | app2 | b6caf890638a506216d625f7c82b.instance2 | New | +——-+—————————————-+—–+ | app1 | b6d1870ad8f3d044cc768b31e810.instance2 | New | […]

Apache 2.2 mod_alias的RedirectMatch有什么问题?

我们使用Apache HTTPD服务器版本2.2。 我尝试使用Apache 2.2的mod_alias RedirectMatch没有成功( http://httpd.apache.org/docs/2.2/mod/mod_alias.html#redirectmatch ) 例如,我需要创build一个只redirectURL参数change_url=1的规则 https://<IP>/servlet1?id=1&type=2&change_url=1 我曾尝试使用以下规则: RedirectMatch (.*)change_url=1(.*) /keepurlprocess/$1 不幸的是,只有当URL中的change_url , https://<IP>/change_url=1 我的正则expression式有什么问题? 如何应用它来查询参数? 另外,我有一些特定的参数type 。 对于某些types,我不需要执行redirect: https://<IP>/servlet1?id=1&type=do_not_redirect&change_url=1 是否有可能创build像下面的规则? RedirectMatch (.*)(change_url=1 AND NOT type=do_not_redirect)(.*) /keepurlprocess/$1