Articles of apache 2.2

如何访问mod_rewrite中的GET参数RewriteCond?

我试图从mod_rewrite访问GET参数。 例如,给定这个URL: http : //myserver.com/foo.png?foo=bar 以下规则不会捕获此URL: RewriteCond %{REQUEST_URI} bar [NC] 虽然这样做: RewriteCond %{THE_REQUEST} bar [NC] REQUEST_URI不包含GET参数吗? THE_REQUEST要走的路吗?

用于托pipe多个网站(Ubuntu和Apache2)的服务器上的单个网站的SSL

我在Ubuntu服务器上设置了SSL。 该服务器正在运行具有多个虚拟主机的Apache 2。 我读过,您需要为运行SSL的每个应用程序提供一个IP。 我的问题是: 如果服务器上只有一个网站使用SSL,这仍然工作? 一个SSL网站的IP,即使其他网站仍在运行(他们不会启用SSL)。 如果是的话,我怎样才能使默认的SSL网站指向我想拥有SSL网站的内容?

拒绝任何setup.php或upload.php的所有请求

从我们在服务器上看到的日志中,有大量的请求来访问upload.php (例如: /plugins/editors/tinymce/jscripts/tiny_mce/plugins/tinybrowser/upload.php ),或者setup.php了大量的variablessetup.php为phpMyAdmin。 这些日志中有404个错误,因为我们没有这些确切的URL,但是如果我们能够否认这种types的所有潜在的攻击,我们会觉得更安全。 所以我想拒绝在我的Apache2 web服务器上包含setup.php或upload.php所有请求。 我们有几百(百)的VirtualHost,我不想写几百次的指令来拒绝每个VirtualHost中的这些文件名。 问题:如何在服务器上全局执行此操作?

Apache的基本身份validation似乎禁用其他模块

我有一个Apache 2.2(在负载平衡器后面)和一个通过LoadModule指令加载的额外的第三方模块(OpenAMnetworking代理)。 这个模块检查每个请求是否被授权。 整个设置工作,并在第三方模块的日志中,我可以看到,检查完成相应的每个请求在Apache的访问日志中find。 如果我通过将以下指令放入Apacheconfiguration的VirtualHost部分来激活基本身份validation,情况就会改变: <Directory /path/to/docroot> Options -MultiViews AllowOverride All Order deny,allow Deny from all Allow from 10.0.0.0/8 Allow from <other ips> AuthType Basic AuthBasicProvider file AuthName "AuthZone" AuthUserFile /path/to/htpasswd Require valid-user Satisfy Any </Directory> 现在基本身份validation工作,但不是第三方模块的检查。 似乎每一个受到基本authentication处理的请求都没有交给第三方模块。 在后者的日志中,我只能看到匹配“允许”的请求,因此没有通过基本的authentication处理。 我可以看到访问日志中的所有请求,我可以看到Apache响应Code 200的“缺失”请求。 这可能是什么原因? 错误日志不包含任何有用的信息。

select正确的EC2实例大小

我在EC2 C1.medium实例上运行一个API服务器。 我们的API调用需要大约3-5秒才能完成(运行一个python调用,并使用less量内存消耗的NLTK调用)。 我们已经在Apache服务器上configuration了它,当我们尝试基准testing时,我们可以创build100个并发呼叫。 如果超过100,我们得到apr_poll:超时指定已经过期(70007)或者apr_socket_recv:连接被同级重置(104)当检查系统负载时,Apache通常崩溃而内存不足,但CPU负载也在一直90-100。 这是EC2 C1.medium实例的绝对限制吗,我们应该移动到更大的实例还是因为对Apache进行了不恰当的调整?

转发我的http请求从我的ip到另一台服务器

我需要将来自旧服务器IP的任何http请求转发给我的新IP。 我迁移了服务器,并且有几个域的TTL很高,我无法更新。 是否有可能从运行centos / whm / php / apache 2+的一台服务器获取所有HTTP请求,并将它们转发给新的ip? 由于我有数百个域,我更喜欢一个解决scheme,涉及在Linux框中运行一个应用程序,将自动推送请求到新的框。 思考? 我试过使用IP表和转发所有传入连接使用preroute链,但似乎这只适用于转发到内部IP地址,而新的IP是外部的。

在web根目录中服务PHP页面,但在子目录中显示内容

我有一个共享的托pipe服务器上的网站。 我的目录布局看起来像这样 /home /user /public_html /pics /family public_html中有一个index.php文件。 我需要帮助编写.htaccess规则 当www.domain.org被请求时,服务index.php文件 请求www.domain.org/pics时强制用户回到public_html 允许用户在请求www.domain.org/pics/family时查看目录内容 我尝试了很多RewriteCond和RewriteRule的组合,但是我不明白这些文档和例子足以知道我想要做什么甚至是可能的。 Web服务器应用程序是Apache的某个版本。

在Windows上使用Apache同时运行PHP 4和PHP 5

我在google上得到的大多数结果是如何让两个版本同时在同一个服务器上运行,但在不同的URL上,但这不是我想要的。 例如,我想让http://localhost在同一个站点上同时运行PHP4和PHP5。 这是因为我有一个PHP4的旧代码在PHP5中执行时破坏了网站。 同一个站点也有一些只用PHP5编写的组件,所以我想在同一个站点同时运行两个PHP版本。 我在运行Apache的Windows XP,我不介意如果需要切换到IIS7。 我已经意识到与这个潜在的解决scheme相关的安全风险。

在CentOS上将SVN服务器设置为虚拟主机

所以,我已经遵循了我在Google上可以find的每一个教程,但仍然无法实现。 下面是我的服务器的conf.d文件夹中的subversion.conf文件。 LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so <VirtualHost *:80> DocumentRoot /home/svn.example.com ServerName svn.example.com ServerAlias svn.example.com <Location /repo> DAV svn SVNParentPath /home/svn.example.com/repo </Location> </VirtualHost> 我已经通过yum以及dav_svn安装了subversion。 我只是想访问我的存储库没有安全性,但我现在很快就会添加,但现在结果是,我得到默认的Apache HTTP服务器testing页,指示服务器已安装,但目录中没有文件。 我究竟做错了什么?

Apache不应该redirect

我已经inheritance了一个LAMP服务器,有很多的定制。 我想在apache中启用mod_status来获得对apache启动的一些监控。 问题是,在httpd.conf中启用mod_status后,我不允许前往http://“serverIP”/ server-status URL,因为apache会将我redirect到“login页面”。 如果我为服务器键入任何无效的URL,它会redirect到这个页面,所有的错误文档页面都会从httpd.conf中散列出来。 任何协助到哪里可能已经configuration,或者如果有一种方法来覆盖它,所以我可以到urlhttp://“serverIP”/服务器状态?