Articles of apache 2.2

使用nginx将HTTPS转换为HTTPS反向代理

我有一个Apache Web服务器configuration一个SSL证书。 由于某些原因,我必须将其置于代理之后。 我想将代理(nginx?)configuration为简单的中继,从HTTPS到HTTPS,尽可能简单。 我的问题是: 是HTTPS到HTTPS代理的一个好主意? 如果是的话,我是否也需要给代理SSL证书,或者我可以在Nginx / apache /任何参数中启用SSL? 非常感谢你的帮助 :-)

浏览器发送max-age = 0,尽pipe标头在每个地方都被修改

我在灯[centos]网站有一个标题/caching问题。 configuration: [root@localhost httpd]# httpd -v Server version: Apache/2.2.23 (Unix) Server built: Nov 25 2012 15:03:00 [root@localhost httpd]# php -v PHP 5.5.22 (cli) (built: Feb 20 2015 04:04:46) Copyright (c) 1997-2015 The PHP Group Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2015, by Zend Technologies php.ini中: session.cache_limiter = […]

用Apache与Apache WSGI并行运行Docker

我需要在一台服务器上与Apache并排运行Docker。 Apache目前有几个虚拟主机,Docker有一个特定的Python版本的Apache和WSGI。 我需要将它们一起设置,而不必更改已经存在的很多虚拟主机的configuration。 基本上我需要从容器转发端口80作为Apache虚拟主机或东西。 有任何想法吗?

根据目录创build使用相同域的虚拟主机

我想要一个新版本的应用程序,需要全新的安装在一个新的子目录。 例如旧版本位于var\www\html 。 新版本我需要在var\www\5.0 <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <VirtualHost> 这适用于www.example.com我创build了另一个虚拟主机文件启用它使用a2ensite为www.example.com/5.0 <VirtualHost *:80> ServerAdmin webmaster@localhost ServerName www.example.com/5.0 ServerAlias www.example.com/5.0 DocumentRoot /var/www/5.0 ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <VirtualHost> 但是这不起作用。 我不希望新版本在现有的html文件夹中。 此外,我不想为新版本创build新的子域名,因为我希望它并行使用两个版本。 我怎样才能做到这一点?

CSS文件中的协议相关URL正在被覆盖

我有这个代码: <?php header('Content-Type: text/css; charset=utf-8'); ?> a.logo{background:url(//webzina.net/img/logo.png) no-repeat 100% 0} 本地(PHP版本5.3.5),我得到: a.logo{background:url(//webzina.net/img/logo.png) no-repeat 100% 0} 但是远程(PHP版本5.3.21),我得到: a.logo{background:url(http://webzina.net/img/logo.png) no-repeat 100% 0} 如果我对标题行进行评论,远程地获得与本地相同的内容。 最糟糕的是,远程我使用https,所以“http:”正在造成麻烦。 有人能告诉我哪个Apache / PHP设置搞乱协议相对的URL或为什么发生这种情况?

如何找出Apache日志中的内容

我正在pipe理一个拥有数百个网站的专用服务器,其中有一个主要的Apache日志。 服务器在每4或5个小时有一次Apache CPU使用率的峰值,经过审查后,我在Apache access_logs行中find如下所示: 128.223.8.111 – [15/Jul/2015:02:36:09 +0100] "HEAD / HTTP/1.1" 159855ms 400 – "-" "-" 160.36.57.172 – [15/Jul/2015:02:57:21 +0100] "HEAD / HTTP/1.1" 105350ms 400 – "-" "-" 142.103.2.2 – [15/Jul/2015:03:45:29 +0100] "HEAD / HTTP/1.1" 130384ms 400 – "-" "-" 这些对应于这些在error_logs中 [Wed Jul 15 02:36:09 2015] [error] [client 128.223.8.111] client sent HTTP/1.1 request without hostname […]

在Apache中立即停止处理并立即返回给客户端

我有一个Apache 2.2,承载一个专有(商业)authentication模块。 这些模块会查看每个请求,如果在后端身份validation软件中被标记和“匿名确定”,则可以让它们通过。 一个这样的匿名资源是一个小型的gif,由面向我们的Apaches的load balacer查询,命名为/lb.gif 。 当authentication软件出现问题时,其模块不会采取任何措施阻止所有内容,包括我们的负载均衡器信标文件。 负载平衡器认为该站点已closures,并停止向其发送stream量。 我希望Apache不要将这个特定的请求发送给其他模块。 这种作品: RewriteEngine On RewriteRule ^/lb.gif$ – [R=200] 看到这个,Apache返回一个200结果的HTML: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>200 OK</title> </head><body> <h1>OK</h1> <p>The server encountered an unknown error, possibly due to misconfiguration. Contact the server administrator: [no address given]<p> More information about this error may be available in the […]

Apache – 取消一个指令

有没有办法“解开”一个任意的Apache指令,比如通过逐字重复,而是用Unset或前面的东西来Unset呢? 举例来说,在服务器configuration级别上我有: ScriptAliasMatch "^/cgi-bin(.*)" "/usr/local/apache/cgi-bin$1" 在虚拟主机之一,我希望能够像下面这样: Unset ScriptAliasMatch "^/cgi-bin(.*)" "/usr/local/apache/cgi-bin$1" 如果这个指令有一个特定的方法,那么我对这个指令很感兴趣(我能想到的最好的方法就是通过mod_rewrite来阻止对这个模式的访问),但是我特别感兴趣的是,一个方法来解决,因为这可能是方便了解未来。

安装域SSL不起作用

我有一个运行Debian 7.5和Apache2的Linode服务器 我有以下文件存储在/etc/ssl/localcerts/目录中: www.test-site.com.key www.test-site.com.csr www.test-site.com.crt intermediate.crt 我在test-site.com.conf文件中的以下configuration位于/etc/apache2/sites-enabled/ : <VirtualHost *:80> SSLEngine On SSLCertificateFile /etc/ssl/localcerts/www.test-site.com.crt SSLCertificateKeyFile /etc/ssl/localcerts/www.test-site.com.key SSLCertificateChainFile /etc/ssl/localcerts/intermediate.crt #SSLCACertificateFile /etc/ssl/localcerts/ca.pem # Admin email, Server Name (domain name), and any aliases ServerAdmin [email protected] ServerName www.test-site.com # ServerAlias test-site.com # Index file and Document Root (where the public files are located) DirectoryIndex index.html index.php DocumentRoot /home/user/public/test-site.com/public/ […]

Apache在日志中随机停止,没有错误

AWS上有一台稳定多年的服务器。 它在Ubuntu 12.04.5 LTS上运行Apache 2.2.22。 我经常在本月顶部运行安全更新。 最近,Apache在午夜左右停止了服务请求,有时在凌晨(中午2-4点)停止服务请求。 对我们来说这是一个低使用期,但我们仍然有一个稳定的请求stream。 我们的白天活动要高得多,白天也不会下降(至less到目前为止)。 到目前为止,它总是在大约10分钟左右到来,并在早上总是恢复正常。 由于问题的时间,我不怀疑它与其他几个线程build议的MaxClients。 我没有看到任何apache错误日志(我们有大约10个虚拟主机),也没有dmesg,也没有syslog。 实际上,我今天早上读了每个日志/ var / log。 在这个问题的时候,我什么也没有看到。 由于网站监视器的通知,我已经能够捕捉到它。 在那段时间里,我可以validationapache没有提供请求。 尽pipe我可以向服务器发送消息。 我怀疑networking问题,但是一个端口是好的,另一个是不好的。 我已经能够确认Apache不会在该服务器上从本地主机提供请求。 所以,这似乎不是硬件。 重新启动apache服务确实使网站备份,但只有几分钟。 当它停下来的时候,我就是活着的日志,而且什么都没有。 问题发生时,没有任何logging显示。 重新启动似乎总是修复它(至less24小时,有时甚至更多)。 亚马逊支持认为服务器没有问题。 我怀疑是Apache失败,服务重新启动不干净。 或者,在操作系统的内核/networking层面发生了一些事情。 而且,当CPU负载很低时,总是会发生这种情况。 内存看起来不错。 没有任何“通常的嫌疑犯”正在发生。 它只是静静地停止工作。 由于缺乏来自服务器的信息,我不知道还有什么要注意的。 我倾向于下周重build服务器,但真的想弄清楚这一点。 也许在问题中还有别的东西我应该看看。 此外,如果有任何日志,我“出现”获取更多的信息,让我知道。 目前我没有日志,我可以发布是有帮助的。 这整个事情对我来说似乎很疯狂,因为我习惯了以某种方式logging失败,特别是如果它是apache或内核(我们已经很长时间的朋友)。