Articles of apache 2.4

Apache日志格式:重复标题

LogFormat指令允许您为日志文件(包括您感兴趣的任何标题)设置自定义格式,例如: \"%{Referer}i\" \"%{Location}o\" 但是,在一个HTTP请求中,可能会多次使用一些头文件: Cache-Control: no-cache Cache-Control: no-store Apache只输出日志中的第一个这些标头。 有没有什么方法可以注销所有的值?

当没有后端可用时,Nginx会为上一页代理服务

想象一下,我们有一个由nginx作为前端,apache(以php或其他)作为后端的网站。 这个想法是,nginx将服务静态,而代理请求* .php文件后端。 易于实施,无需大脑configuration,不是吗? 现在想象我们有坏行为的后端。 它使用了一些不稳定的模块,它用来产生页面几秒钟,我们不确定页面是否被渲染。 奇怪,但仍然有可能,对不对? 遗留代码等。 顺便说一句,后端可能在不同的机器上(是的,传统:旧的操作系统,旧的软件,“甚至不要碰它!”等) 现在我们想在后端不回答的情况下“保护”自己。 如果我们没有页面或得到5xx错误,我们最后一次成功的时候为页面提供服务将会很好。 换句话说,如果后端返回了200个代码和页面内容,那么我们就为它服务。 如果我们得到了超时,或者我们从后端得到了5xx代码,我们为相同的URI提供页面,但是caching了一个。 这会给我们一些时间来修复后端,而用户至less会看到一些东西。 Nginx是一个不错的软件。 我发现proxy_cache_use_stale指令,还有一些其他的,但恐怕如果后端失败,将会提供什么版本。 我也可以想象一些http平衡器(以nginx为例),它将检查后端状态并停止使用它。 然后第二个后端可能是服务器充满了模仿原始网站的静态页面(甚至可能没有一些元素,如“login”链接)。 如果是这样,我应该如何明智地更新“模仿”服务器一段时间? 什么方法可能会更好? 你会select什么?

使用HTTPSredirect到非www

我安装了一个Apache Web服务器并创build了一个网站。 让我们encryption用于https。 我跟着自动configuration过程和非WWWurl工作正常。 但是,如果我想redirecthttps://www到https://xxxxx.com与.htaccess它不起作用。 我尝试了以下设置: RewriteEngine On RewriteCond %{HTTP_HOST} ^www\.(.*) RewriteRule ^.*$ https://%1/$1 [R=301,L] mod_rewrite已启用。

除了试验和错误之外,我怎样才能知道Debian上的哪个VirtualHost Apache 2.4.10首先被加载?

之后(或者说,在networking主机之间的迁移期间,因为我想保持在我的VPS根目录),我被温和地通知我的主页是“我试图打开网站,但它打开了索引网站,而不是一个正常的网站”。 我去看看访问者的意思,这是一个自动生成的索引页面,在/ var / www,带有一个“html”文件夹,提供了Debian精心制作的“It's works!”。 页。 我通过了000-default.conf,并确定它指定了“/ home / cjsh / mirror”的DocumentRoot。 重新启动。 没有骰子。 我编辑了一些其他的文件。 没有骰子。 我用“/ home / cjsh / mirror”全局replace了“/ var / www”。 现在它显示正确的页面。 但是,另一部分是我想要将HTTPredirect到HTTPS。 目前我的网站服务于两个; 我想http://cjshayward.comredirect到https ://cjshayward.com,000-default.conf应该这样做,但似乎没有被首先咨询。 我有几十个conf文件; 除了ssl-default.conf之外的所有内容都以\ d \ d \ d开头。 我怎么能找出什么文件加载第一,或告诉Apache,我想文件加载在例如字典顺序?

使用mod_proxy隐藏原始URL

我已成功地使用ProxyPass和ProxyPassReverse来反向代理在Tomcat服务器下运行的应用程序。 然而,挑战是我想使用一个假的URL来完全混淆原始应用程序的path。 假设我的Apache服务器正在侦听端口9999,原始应用程序的内部path是192.168.1.55:8080/myapp。 目前,我使用ApacheIP:9999 / myapp ,它工作得很好。 当我尝试使用伪造的“别名”,例如从myapp到business ,Apache返回一个HTTP错误代码(404)。 这是我的httpd.conf的一个非常简短的摘录: ProxyPass /myapp http://192.168.1.55:8080/myapp Keepalive=On timeout=600 ProxyPassReverse /myapp http://192.168.1.55:8080/myapp

安装apache:不pipeVCRUNTIME140.dll,尽pipe安装VC_redist.x86.exe

我按照Apache文档的说明安装了VC_redist.x86.exe,但是当我运行httpd.exe -k install它给了我错误: this program can't start because vcruntime140.dll is missing from your computer. Try reinstalling the program to fix this problem. 安装VC_redist.x64.exe也没有解决问题。 为什么会丢失? 安装“VC_redist.x86.exe”后需要重新启动吗? 还有别的吗?

AliasMatch里面<if? 目录

我正在尝试在/etc/httpd/conf/服务器configuration中使用AliasMatch和<If>目录,但它告诉我AliasMatch not allowed here <If "%{HTTP_HOST} == 'localhost:8000'"> AliasMatch /here/(.*) /there/$1 </If> 我想要做的是执行基于QUERY_PARAM的AliasMatch(现在你看到HTTP_HOST,但我只是想它)。 有没有可能以某种方式做到这一点? 有其他select吗?

在Ubuntu 14.04 LTS上安装Linux Malware Detector的错误

在运行./install .sh时,我得到… ln: failed to create symbolic link '/usr/local/sbin/maldet': No such file or directory ln: failed to create symbolic link '/usr/local/sbin/lmd': No such file or directory 然后, update-rc.d: warning: /etc/init.d/maldet missing LSB information 我假设在第二个错误的结果。 我见过的所有安装说明都没有预料到这一点。 问题 – 是否有解决办法,还是我需要find一个Ubuntu友好的替代服务器恶意软件程序?

Apached + Siteminder问题

我在服务器上遇到一些非常缓慢的longin问题,通过Siteminder提供单点login。 看完日志后。 我可以看到以下内容: [15 / Dec / 2015:16:47:09] [信息] [CA WebAgent IPC] [CSmIpcEvent :: WaitForEvent]超时间隔已过,但事件的状态为非信号 [15 / Dec / 2015:16:47:25] [信息] [CA WebAgent IPC] [CSmIpcEvent :: WaitForEvent]超时间隔已过,但事件的状态是非信号 [15 / Dec / 2015:16:47:25] [信息] [CA WebAgent IPC] [CSmIpcEvent :: WaitForEvent]超时间隔已过,但事件的状态是非信号 [15 / DEC / 2015:16:47:40] 我发现了它的一个巨大的数量 这对任何人都意味着什么? 最好, 中号

Php FPM + Apache。 为PHP文件自定义404

我已经设置了一个小的Apache实例,并使用FPMconfiguration了PHP。 我正在使用ProxyPassMatch指令。 现在,当FPM没有find请求的文件,它只会打印出“找不到文件”并退出,而不使用自定义错误页面。 我没有find有关如何自定义这些错误页面的文档。 是否有任何调整代理伪指令来处理错误? 还是应该通过RewriteRule检查文件是否存在? 也许你已经有一个例子? 谢谢!