Articles of apache 2.2

Apache / Glassfish集成

所以我现在有一个glassfish 3.1服务器和一个apache 2.2服务器运行在一个盒子上。 然而,我正试图找出路由一些stream量通过Apache服务器到glassfish服务器,以隐藏非标准端口8080,8181。 我也有在apache服务器上的静态内容。 我已经做了一些search,并阅读了几个例子,谈论这样做,但是我真的是新的阿帕奇,我不理解虚拟主机和mod_proxy的东西。 任何帮助理解这些,以及如何完成我想要做的将是伟大的。 编辑 每个Shane的例子,我尝试了以下。 <VirtualHost *:80> ServerName forum.mydomain.com # any logging config, etc, that you need ProxyPass / http://127.0.0.1:8080/forum/ ProxyPassReverse / http://127.0.0.1:8080/forum/ </VirtualHost> 但是现在我所有的stream量都会去http://127.0.0.1:8080/forum/,而且由于某些原因,所有的图片都丢失了。 所以让我更好地解释我的情况。 我有一个提供静态页面的Apache服务器,这些页面是从mydomain.com访问。 比我有一个论坛,作为一个Web应用程序在我的glassfish服务器上运行,他们在mydomain.com:8080/forum/服务,我想要做的是有forum.mydomain.com去mydomain.com:8080/论坛/但隐藏端口8080从用户。 让我知道你的想法。 编辑第2部分 所以,由于我的最后一次尝试不起作用,我决定尝试Shane的例子的另一个偏差,所以我尝试了以下。 <VirtualHost *:80> ServerName mydomain.com ServerAlias subdomain.mydomain.com DocumentRoot "/usr/local/apache/htdocs" <Location /forum> ProxyPass http://127.0.0.1:8080/forum/ ProxyPassReverse http://127.0.0.1:8080/forum/ </Location> </VirtualHost> 但是,这也没有工作,现在如果我打mydomain.com它需要我mydomain.com//forums/list.page,但它是一个404错误(我认为这很奇怪,因为它显然有玻璃鱼服务器,因为它重新路由到list.page)。 但是,如果我去subdomain.mydomain.com它把我带到我正常的静态网页。 我觉得我必须要接近,但我不知道什么是错的。 在这个例子中,我希望mydomain.com和subdomain.mydomain.com会把我带到我的静态页面,而mydomain.com/forum/会把我带到我在glassfish上的论坛应用程序。 […]

通过PHP访问文件,但不能从外部访问

我的主机为我提供了两个文件夹供我使用, /home/public/这是页面去的地方, /home/private/是我个人使用的。 我想让PHP创build一个文件,这个文件可以从机器上读取,但不能通过互联网上的任何人读取。 公用文件夹中的文件导致此问题。 我想到了由apache组织拥有的文件,但我不是它的成员。 如果我可以将文件放在我的私人目录中,这将是非常好的,但是可以理解的是,当试图写入文件时,出现访问错误。 我该怎么办?

反向代理和Java应用服务器安全

是否有可能使反向代理(Apache HTTP 2.2)处理身份validation(HTTP Basic),然后仍然使用Java应用程序服务器(GlassFish 3.1或JBoss 7.0.2)的容器pipe理的安全性进行授权? 我有GlassFish做容器pipe理的安全(authentication和授权在一起),同时使用声明和程序化的容器安全性与基于表单的身份validation和自定义的GlassFish身份validation模块。 我甚至通过使用mod_proxy_ajp的Apache HTTP Web服务器反向代理来实现这个工作。 现在我只是试图find一种方法来卸载身份validation件到Apache,同时保持容器pipe理的安全授权片。 也许在Java应用程序服务器中有一个单点login接口,这将有助于实现这一点(因为这就像SSO – Apache需要对身后所有东西进行身份validation)?

什么是Apache BytesLog指令有用?

它有什么作用? 它是模块的一部分还是Apache核心服务器的一部分? 我有一个虚拟主机的BytesLog设置,他们似乎没有太多。 当我打开一个字节日志文件时,我看到的只是一个数字列表,我看不出如何监控Apache性能。

redirect来自错误Referer的用户

忽略我们是否应该做出这个改变的好处(情况稍微复杂一点,可能是我的保密协议涵盖的),我们的客户希望我们要求我们正在build设的网站的访问者来自他们的另一个网站。 如果用户从其他地方访问我们,则应将其发送到其他网站的login屏幕。 感觉最简单的方法是使用mod_rewrite来redirect任何与既不是我们的网站也不是另一个的引用。 我目前的想法是 在httpd.conf RewriteMap deflector txt:/path/to/deflector.map RewriteCond %{HTTP_REFERER} !="" RewriteCond ${deflector:%{HTTP_REFERER}|NOT-FOUND} =NOT-FOUND RewriteRule ^ http://www.theothersite.com/login.jsp [R=307,L] 在deflector.map //www.oursite.com/ – //oursite.com/ – //www.theothersite.com/ – //theothersite.com/ – 这可以让我们很容易的扩大“允许转介人”的名单,这感觉是一个好主意。 那么我有三个问题: 是mod_rewrite (我们已经广泛使用)这样做的最好方法? 如果是,那么307 Temporary Redirect是一个307 Temporary Redirect响应的最好办法呢? 因为我主要不是LAMP开发者/pipe理员,所以我在这些重写规则中做了任何愚蠢的拼写错误? ; O) 在我看来, 307 Temporary Redirect或403 Forbidden是最合适的状态码 ,我认为这是一个坏事™发送Location:redirect头与4xx响应。 这一切都有道理? 编辑:默认情况下,地图search是否区分大小写? 我需要担心这里的情况吗? 编辑2:地图search正则expression式search还是全键匹配? 如果地图包含www.foo.com和Referer:标题读取http://www.foo.com/bar.php它将匹配?

Apache2,Kerberos:gss_accept_sec_context()失败:请求不支持的机制

我想用mod_auth_kerb在Linux上使用Kerberos和Apache 2。 我添加.htaccess我的项目如下: #SSLRequireSSL AuthType Kerberos AuthName "Kerberos Login" KrbMethodNegotiate On KrbMethodK5Passwd Off KrbAuthRealms DOMAIN.COM Krb5KeyTab /etc/httpd/httpd.keytab KrbLocalUserMapping On require valid-user 当我试图在IE或Firefox上testing我的单一login时,在apache日志中出现以下错误: [Thu Jan 19 21:03:27 2012] [error] [client 10.65.0.1] gss_accept_sec_context() failed: An unsupported mechanism was requested (, Unknown error) 我不知道这是什么,也不知道该怎么做。 我的目标是让REMOTE_USER被AD用户名所填充。 但是现在因为这个错误我什么也做不了

Apache2安装的ModRails:无法加载?

我正在尝试在Ubuntu上运行Apache2 / Passenger的Ruby on Rails的全新安装。 我能够成功安装apache2,rvm,ruby,rails和passenger,后面的部分按照这个教程。 所有的设施进展顺利; 我结束了这些版本的软件: 在Amazon EC2上运行的Ubuntu 11.10 Apache 2.2.20 RVM 1.10.2 Ruby 1.9.3p0 Rails 3.1.3 乘客3.0.11 运行passenger-install-apache2-module ,安装程序build议我: Please edit your Apache configuration file, and add these lines: LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.3-p0/gems/passenger-3.0.11/ext/apache2/mod_passenger.so PassengerRoot /usr/local/rvm/gems/ruby-1.9.3-p0/gems/passenger-3.0.11 PassengerRuby /usr/local/rvm/wrappers/ruby-1.9.3-p0/ruby 当接线Apache2使用mod_passenger时,这是我遇到麻烦的地方。 我去/etc/apache2/mods-available并编辑: passenger.load LoadModule passenger_module /usr/lib/apache2/modules/mod_passenger.so` 至 LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.3-p0/gems/passenger-3.0.11/ext/apache2/mod_passenger.so` passenger.conf <IfModule mod_passenger.c> PassengerRoot /usr PassengerRuby […]

configurationApache服务器状态处理程序

这是在Apache / 2.2.21上。 在httpd.conf中,我有以下指令: <位置/服务器状态> SetHandler服务器状态 命令否认,允许 全部否认 允许来自xx.xx.xxx.xxx <Location> 我最近意识到,我自己的IP地址不再符合“允许”,但仍然能够访问服务器状态! 换句话说,这是完全公开的。 (我现在已经禁用了它。) 这怎么可能? 位置指令是全球性的,我的网站通过虚拟主机服务。 另外,当我从dynamic分配的IP地址访问服务器状态时,configuration服务器状态的最佳方法是什么?

使用代理平衡器stream量作为反向代理运行的Apache似乎并不均匀分布

我们有Apache作为反向代理使用代理平衡器运行我们运行从7个云计算机的JMeter负载testing,但stream量似乎并没有平均分配我认为这是一个Apache的configuration问题,但不知道是什么 基本上在我们的VirtualHost指令中我有: ProxyPreserveHost on ProxyRequests Off ProxyPass / balancer://my-site/ ProxyPassReverse / balancer://my-site/ Header add Set-Cookie "route=.%{BALANCER_WORKER_ROUTE}e; path=/" 和 <Proxy balancer://my-site> BalancerMember https://MYMACHINE:8443 route=1 loadfactor=20 BalancerMember https://MYMACHINE:8443 route=2 loadfactor=20 ProxySet stickysession=route </Proxy> 起初它没有loadfactor = 20和负载平衡没有做好之后,我增加了它有改善,但不是很好。 交通仍然会被路由到1-2台以上的其他机器(我们一共有5台机器)。

CentOS – Apache – 是否可以将umask指令添加到httpd.conf或vhost.conf文件中?

昨天,我终于能够通过在/ etc / sysconfig / httpd脚本中将umask设置为002来让我的apache进程将文件写入目录,但是我想知道是否可以在configuration层设置此umask指令? 我正在寻求这样做的可移植性的原因,因为我的虚拟主机configuration版本控制和发布到远程服务器。 我宁愿不被迫手动configuration每个服务器的httpd脚本(没有木偶)。 谢谢。 – 编辑 – 使用Ruby / Capistrano来部署代码和configuration文件 在创build用户上传的文件时使用PHP mkdir()。 而不是将目录设置为777,我正在创build将拥有该目录的特定“文件pipe理器”用户/组。 然后将apache用户添加到组中。 如果我不设置umask为002,那么我得到权限拒绝错误,因为apache用户!= filer用户,但apache用户在文件pipe理组。