Articles of apache 2.4

有一个潜在的风险,当启用一个Apache模块的东西被打破?

是否安全地假设,启用apache模块后没有东西被破坏 ? 例如,我想在生产服务器上启用mod_headers ,但是恐怕它可能会破坏某些东西,也许是因为它可以与其他模块交互或者是由于其他原因?

单个IP上的apache http和https

我们使用基于名称的虚拟主机在我们的环境中运行apache 2.4 web服务器。 有一个单一的IP(比如X)分配给这个服务器,这个NAT是单个私有的(比如Y)。 目前,我的端口80和443监听如下:0.0.0.0:80和0 0.0.0.0:443。 有很多网站运行在80端口[http:// domain1.com,domain2.com等] 而且只有运行在443端口的单个网站[https] [说abc.com] 但是当错误地inputhttps://domain.com时,它会显示SSL警告并显示abc.com的内容。 由于SSL不支持基于名称的虚拟主机,这似乎很正常。 但是,如何在用户错误地在我的环境中托pipe的非HTTP网站上inputhttps时,如何限制用户不查看abc.com的页面?

Apache2 + Varnish 5 + phpmyadmin导致分段错误(11) – ERR_EMPTY_RESPONSE

我build立了一个清漆书为networking服务器(Debian 8(jessie),8 GB内存,100GB SSD,Mysql 5.7,PHP 70.13,Apache2,opcache(256M))推荐的一切。 Varnish使用256 MB内存,Apache没有限制应该使用多less工人,因为这没有任何改变。 此外PHP的阿帕奇使用1024MB作为最大的内存限制。 有6个网站正在运行,其中2个由WordPress的Jetpack监测。 一个子域是为phpmyadmin保留的。 重新启动Varnish和Apache2后,一切正常。 但由于某种原因,清漆不能访问网站,并返回一个Guru冥想。 当我通过端口8080直接访问Apache时,我得到一个ERR_EMPTY_RESPONSE 。 apache error.log说: [core:notice] [pid 31160] AH00052:子pid 8773退出信号分割错误(11) 核心转储文件说: [New LWP 26426] Core was generated by `/usr/sbin/apache2 -k start'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x00007f87f5fdc0b8 in ?? () gbd bracktrace充分说: #0 0x00007fcf01cd1b82 in do_fcntl (fd=76, cmd=7, arg=0x7fcf02114e80 <proc_mutex_lock_it>) […]

我怎样才能让Apache的403错误的configuration文件path和行号

我在Debian unstable上运行Apache 2.4.7。 当我尝试使用mod_wsgi模块运行supysonic时,出现了403错误。 我把日志级别为wsgi和authz_core达到trace6 ,但我仍然没有得到任何有用的消息。 请注意,我正在使用mod_access_compat ,因此Order … Allow组合是有效的。 我想特别看到什么configuration文件(例如某个.htaccess文件,或者标准的apache或debianconfiguration文件之一),以及哪一行包含生成403错误的规则。 我已经手动走树,检查在每个级别的Web服务器正在运行的用户已经读取权限的文件,并阅读和执行的目录。 我的/etc/apache2/apache.conf文件包括行: LogLevel info authz_core:trace6 wsgi:trace6 supysonic的/etc/apache2/conf-enabled/supysonic.conf的apacheconfiguration文件是: WSGIScriptAlias /supysonic /mnt/large_vol/home/bminton/public_html/programs/supysonic <Directory /mnt/large_vol/home/bminton/public_html/programs/supysonic> WSGIApplicationGroup %{GLOBAL} Order deny,allow Allow from all </Directory> 错误日志包含以下行: [Wed Jan 15 08:40:34.106119 2014] [authz_core:debug] [pid 13558] mod_authz_core.c(802): [client 127.0.0.1:58438] AH01626: authorization result of Require all denied: denied [Wed Jan 15 08:40:34.106197 […]

同时使用mod_log_rotate和rotatelogs.exe有什么缺点?

在基于Microsoft的平台上,使用rotatelogs.exe作为ErrorLog指令并允许mod_log_rotate处理CustomLog指令进行轮转时,是否存在任何缺陷或隐藏的缺陷? 据我所知,mod_log_rotate接pipe服务器范围内的日志logging职责,那么mod_log_rotate和rotatelogs.exe如何交互? 是rotatelogs.exepipe道从mod_log_rotate数据? 以下是我在httpd.conf中的configuration: # Rotate our ErrorLogs, since mod_log_rotate doesn't seem to handle this. ErrorLog "|bin/rotatelogs.exe -l logs/error/error.%Y-%m-%d-%H_%M_%S.log 86400" […] <IfModule log_rotate_module> # # Produce a log file with at human readable extension in a directory called 'access'. # CustomLog logs/access/access_log.%Y-%m-%d-%H%M%S combined […] 我不是在征求意见,特别是如果他们是无关紧要的。 我想知道这是否会从技术或安全angular度产生任何真正的问题。

未得到充分利用的Apache服务器引发MaxRequestWorkers达成:内存泄露?

在具有1Gb RAM的Ubuntu服务器上,具有默认configuration的Apache 2.4.7服务器开始偶尔停止响应请求。 它用于个人云+其他需求和低stream量的网站。 一个error.log检查揭示了这种模式,每次出现问题时都会反复出现: [mpm_prefork:error] [pid 31950] AH00161: server reached MaxRequestWorkers setting, consider raising the MaxRequestWorkers setting 之后access.log根本不logging任何访问。 一天后: [mpm_prefork:notice] [pid 31950] AH00171: Graceful restart requested, doing restart 这显然没有任何区别。 我不得不每次手动重新启动服务器。 现在我正在看mpm_prefork.conf ,这是默认的,从我已经能够收集的信息,我不认为我需要改变任何东西。 我已经开始怀疑可能会有一些内存泄漏,并且读取MaxConnectionsPerChild 1000是防止内存泄漏的一种手段,所以我把它设置为1000,并且会看到它的行为。 由于曾经有一段时间的错误,所以很难理解究竟是什么导致了这个问题。 你认为在这种情况下使用MaxConnectionsPerChild是一个很好的策略(希望内存泄漏将在我所托pipe的站点的进一步发布中得到解决),还是这不表示内存泄漏? 注意:平均Apache进程消耗了大约20Mb的内存,我把MaxRequestWorkers从150减less到了30(考虑到服务器上Apache的500Mb可用内存)。 我现在有了: <IfModule mpm_prefork_module> StartServers 5 MinSpareServers 5 MaxSpareServers 10 MaxRequestWorkers 30 MaxConnectionsPerChild 1000 </IfModule> 我不认为记忆达到了顶峰,但是当我的穆宁客户倒下时,我意识到,现在我不能排除它。

Apache:在webdav中禁用*parsinghtaccess

我有以下目录布局: /var/www/ example.com/ logs/ html/ stuff/ Apacheconfiguration通常从/var/www/example.com/html 我已经configurationwebdav工作的urlhttps://example.com/server-admin并允许访问其他目录: <VirtualHost> … Alias /server-admin /var/www/example.com/ <Location /server-admin > Dav on AllowOverride None … 使用AllowOverride None我想禁用htaccess文件,以便他们不会中断webdav操作。 这种作品。 但是 :如果我上传一个语法错误的htaccess文件,一切都会崩溃,500内部服务器错误。 我猜即使这样的文件没有被使用,Apache仍然parsing它。 所以我尝试使用AccessFilename .davaccess来更改它,使其他名称,哪种工作,但不是在<Location>而是全局在<VirtualHost> 。 那么该怎么办? 如何禁用<Location> htaccess,或者如何更改布局才能使其工作?

运行一个没有扩展名的文件作为CGI脚本在/ cgi-bin之外

看来我是第一个想做这个的人…用lighttpd解决起来真的很容易,但是用apache这个看起来是不可能的。 基本上我想运行一个cgi文件没有扩展outsite cgi-bin。 现在不幸的是,如果我在AddHandler cgi-script filename下设置文件名,apache会忽略它。 另一种select是使用SetHandler cgi-script标记整个目录,但是忽略该目录和子目录中的静态文件。 我如何说服apache 2.4把一个确切的文件作为一个CGI文件?

在Apache中如何使用相同的上下文根来定义多个ProxyPass到不同的服务器?

**更新与解决方法在这个答案的底部** 我有一个要求我的web应用程序代理到2个外部报告服务器。 所以我将为每个外部报告服务器提供一个菜单项。 但是,浏览器的URL也看起来像我的服务器,所以我不能只是redirect。 这些服务器都具有相同的上下文根/ ibm 对于这两个服务器,浏览器URL应该看起来像http://example.com/ibm ,而apache代理正确的。 应该如何做这样的设置? Apache如何知道它必须代理哪个? 如果我不得不做一些改变,那么URL将会变成: http://example.com/rep1/ibm and http://example.com/rep2/ibm 我设法使用我的weblogic-proxy servlet和操作URL等来达到预期的效果,但是如果可以以某种方式完成,Apache将是一个更高效的解决scheme。 我很欣赏任何input。 此外,对外部报告服务器的初始请求是从我的web应用程序启动,而不是从浏览器启动。 **更新** 我们现在必须代理约10个其他的networking服务器,其中一些有这个问题。 但是每当目标web服务器被部署在根目录中时,我们也必须重写主体等等。对于这些代理集成中的一些来说,这是一个试验和错误。 解决方法:我们已经切换到这些代理服务器的子域,实际上子域URL仍然指向我们自己的Apache,但是使用这些子域名,我们可以更容易地在我们的Apacheconfiguration中设置一个虚拟主机和代理服务器,我们不必重写任何响应机构等。

modsecurity apache mod-security.conf丢失

问候Serverfaultians。 我不是一个服务器的人,你可以从我的noob得分1分看到。 但也许那些更精通可以帮助我。 我正在使用Ubuntu v13.10 32位服务器和Apache2 v2.4.6,我试图在互联网上的生产/testing服务器上设置和configurationmodsecurity和modevasive 。 我试图按照这个教程: http : //www.thefanclub.co.za/how-to/how-install-apache2-modsecurity-and-modevasive-ubuntu-1204-lts-server 。 但在步骤3: 现在将这些规则添加到Apache2。 打开terminal窗口并input: sudo vi /etc/apache2/mods-available/mod-security.conf 这个文件不存在。 有什么build议么?