Articles of Apache的2.2

Apache访问日志 – 请求URL不属于我的网站

我正在开发只有less数人有权访问的网站。 现在我对服务器pipe理相当陌生,但我自己安装了Apache和其他所有东西,所以很可能我在这个过程中犯了一些错误。 今天我注意到我的网站花费了大量的时间来加载5-20秒,而通常最多需要1-2秒。 这没有发生,由于我的编程错误,我已经双重检查一切,并在一秒钟内生成页面,但HTTP请求需要永远加载。 所以我看着日志和错误日志非常干净,但访问日志让我真的很担心,有各种各样的urlGET请求吨,只是名不复述: "GET http://www.aromaconnection.org/2009/11/in-flanders-fields.html" "GET http://losice.info/losicki-szpital-certyfikatem/" "GET http://search.yahoo.com/search?p=http%3A%2F%2Fvk%2Ecom%2Fvideo36879733%5F166822918&b=11 我被黑客攻击了吗? 如果不是,为什么我得到所有这些请求,什么可能导致这些长的加载时间? 编辑我试图改变错误日志级别debugging,这是我开始得到什么: [info] server seems busy, (you may need to increase StartServers, or Min/MaxSpareServers), spawning 16 children, there are 0 idle, and 26 total children 我想这是我的问题,但仍然没有解释所有这些GET请求。

在Apache上select性地只logging1 / n行日志

我打算用Apache做一些与性能相关的日志logging。 计划是在实时系统上为每个第n个请求logging特殊的诊断信息。 然而,因为这是实时系统,所以我对统计样本更感兴趣,而不是logging每个请求的确定性日志。 Apache本身为性能指标(每个请求的毫秒数等)提供了强大的日志logging选项,并且可以使用响应头添加自定义测量。 有一个简单的方法来做Apache日志logging不会涉及所有请求,但它们的统计子集? 这将1)减less创build的日志文件大小2)对诊断系统的性能影响较小。 如果还没有这样的select,那么开始使用自定义日志的自定义模块最简单的方法是什么?

如何更新OpenSSL

我的服务器上安装了CentOS 6.2(Final)。 我已经从openssl源文件“openssl-1.0.1g.tar.gz”更新了openssl。 但是,当我通过OpenSSL版本命令检查它显示我“ OpenSSL 1.0.1g 2014年4月7日 ”这是正确的,并更新之一。 但是,当我检查使用“rpm -q openssl”命令它给我“ openssl-1.0.1e-16.el6_5.4.x86_64 ”这个输出应该是5.7。 而且当我使用rpm -q –changelog openssl时,它会给出下面的输出结果 *星期二二月07 2014TomášMráz1.0.1e-16.4 – 修复CVE-2013-4353 – 无效的TLS握手崩溃 Mon Jan 06 2014TomášMráz1.0.1e-16.3 修复CVE-2013-6450 – DTLS1上可能的MiTM攻击 星期五2013年12月20日TomášMráz1.0.1e-16.2 修复CVE-2013-6449 – 当SSL结构中的版本不正确时崩溃 在哪里应该显示如下输出 * Mon Apr 07 2014TomášMráz1.0.1e-16.7 – 修复CVE-2014-0160 – TLS心跳扩展中的信息泄露 即2014年4月7日更新。 我如何解决这个问题? 请帮忙。 我已经成功更新到1.0.1g。 openssl版本显示“ OpenSSL 1.0.1g 2014年4月7日 ”。 rpm -q […]

如何使用apache2来监听url名称并将信号redirect到合适的服务器

我想知道如何使用Apache2来侦听用户试图访问的网站的URL,然后将其redirect到另一个端口上运行的本地networking上的另一台服务器? 例如,我有以下网站: dl.MyWebsite.org Other_site.com Business_web_page.xyz web_email_server.net Private_Storage.hi ftp.othersite.com 并假设我希望有一台服务器在端口80上侦听,并确定用户是否尝试访问在端口25577上运行的web_email_server.net网站,但是当用户在80端口上访问该站点时,连接到端口25577上运行的服务器,然后将其返回到端口80

Apache 2.2 <Location>错误:试图服务目录,不重写

安装程序:Apache 2.2(Windows,win32)。 httpd.conf片段: Alias /custom /var/www/custom DirectoryIndex index.html <Location /custom> SetHandler custom_handler DirectoryIndex index.html </Location> <Directory /var/www> Allow From all Options +Indexes AllowOverride all DirectoryIndex index.html </Directory> 也: mod_dir,mod_rewrite已激活 index.html存在于/ var / www / custom中 服务器进程UID可以读取/ var / www中的所有文件/目录 Apache服务在所有接口上侦听 自定义处理程序处理位置path中的某些URL,其他从文件系统处理; 如同没有处理程序一样处理index.html 问题: 以位置path开始重写URL不起作用(没有错误报告) 当试图服务http://服务器/自定义 (没有closures斜线)时,会发生以下情况: Apacheredirect到http:// ServerName / custom / (到ServerName指令值) “尝试服务目录”被写入错误日志为/ var / […]

查找在Apache中加载模块的位置和conf指令

我正在浏览我的apache服务器已经加载的模块。 要得到这个列表,我使用下面的命令: apachectl -M 在列表中提供了一些我不能立即识别的模块,具体来说: core_module mpm_prefork_module http_module so_module 所以问题是:有没有人知道跟踪模块文件的位置和加载它的conf文件的方法 值得注意的是,这些不是从httpd.conf(/etc/httpd/conf/httpd.conf)或httpd.conf包含的conf.d / *。conf位置加载的。 然而,这里有conf文件,其中包括其他位置,这些文件包括其他位置,它的所有有点兔子洞。 所以如果有一个命令来获得我需要的信息,那么一切都会好起来

Apache – 更改域名和限制访问

我有两个网站已经configuration(不是我)在Apache服务器(在Debian下): 位于/www/sitebeta 位于/www/site mydomain.com 我还在/www/sitelanding创build了一个新的“login页面” 我想要实现的是configuration服务器,如下所示: 如果从预定义的IP地址范围访问,则mydomain.com将指向/www/sitebeta 如果从其他地方访问域mydomain.com ,则应指向/www/sitelanding 我怎样才能做到这一点? 我想我将不得不编辑apache.conf,但有没有需要任何DNSconfiguration? (因为域已经指向该服务器)。 我如何限制到这些IP – 通过.htaccess?

VirtualHost请求是混合的

我有一个相当繁忙的服务器(每秒约10-15个请求),为多个域提供网页。 今天我才意识到,有时候,“请求”是混合的。 影响是非常小的(可能是0.01%),但肯定是一个问题。 在例子中,我有以下脚本 <VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/host1 ServerName myhostname1.com … … CustomLog ${APACHE_LOG_DIR}/host1.access.log combined </VirtualHost> 和 <VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/host2 ServerName myhostname2.com … … CustomLog ${APACHE_LOG_DIR}/host2.access.log combined </VirtualHost> 但是,有时在host2.access.log中出现的请求应该做到host1,反之,像apache一样会混合请求。 我也看到很多408错误(很明显,不是超时,但是出了点问题)。 这些408错误似乎也来自其他虚拟服务器。 是否有任何已知的问题/错误的Apache可以导致这个问题? 使用apachectl restart时,apache error.log显示: [Sat May 09 11:40:11 2015] [notice] SIGHUP received. Attempting to restart apache2: apr_sockaddr_info_get() failed for […]

子域名的https呼叫正在获取apache django部署中主域的htps页面

当我打电话给https://new.sample.com时,我得到https://sample.com的页面,但http://new.sample.com正在获取正确的页面 sample.comconfiguration文件 <VirtualHost xx.xx.xx.xx:80> ServerName sample.com WSGIScriptAlias / /path/to/my/project/sample.wsgi </VirtualHost> <VirtualHost xx.xx.xx.xx:443> ServerName www.sample.com SSLEngine ON SSLCertificateFile /etc/apache2/ssl/mycerficate.crt SSLCertificateKeyFile /etc/apache2/ssl/mykey.key SSLCertificateChainFile /etc/apache2/ssl/mychain.crt # Django settings WSGIScriptAlias / /path/to/my/project/wsgi.py <Directory /path/to/my/project/> Options -Indexes AllowOverride All Order allow,deny Allow from all </Directory> new.sample.comconfiguration文件 <VirtualHost xx.xx.xx.xx:80> ServerName new.sample.com ServerAlias new.sample.com WSGIPassAuthorization On # Django settings WSGIScriptAlias / /path/to/my/project/wsgi_new.py […]

Apache端口转发

我公司的一些木偶已经封装了apache服务器的configuration。 基本上我需要做的是解决这个问题,就是捕获端口8082上的所有stream量(Apacheconfiguration为侦听此端口) – 然后将此stream量redirect到/ bugzilla。 这是可能的,如果是的话如何? 该框只对内部用户可见,所以在这种情况下,快速的肮脏的黑客就好了。