Articles of httpd

如何使用mod_vhost_aliasconfigurationapache2 / httpd群发虚拟主机

我现在一直在寻找,但找不到任何答案。 我正在使用httpd 2.2.15和Centos 6.2。 我已经configuration了大量虚拟主机的Apache。 即: UseCanonicalName off VirtualDocumentRoot /var/www/html/%0 我将有相同的“主”域与不同的子域指向虚拟主机。 我创build了一个自签名的证书,用于通用名称* .mydomain.com的testing目的。 整个服务器有一个IP。 我怎样才能configurationApache为我的虚拟主机使用SSL? 如果可能,添加到上面我也想实现这一点: 我可以定义一个目录,或更好的一些文件(如login页面),应该从ssl中排除? 所有的虚拟主机都是同一个应用程序的基本不同的实例(除了我在下面的2中提到的那些)。 我可以定义一些不应该使用ssl的虚拟主机(我完全控制这些虚拟主机的子域名)。 这将是两个应用程序,我的主页(www)和一些pipe理应用程序。 如果不能做出例外,我想我会把它们放在另一台服务器上。 除了我在上面提到的2以外,所有的虚拟主机都会根据用户请求自动创build。 基于@Shanes评论,我更新 :如果用户使用https://时,他们不应该,这是很好的,如果他们被redirect到http://。 如果这是不可能的,我想这是可以的,如果他们得到一个错误消息。 当然,如果http和https都起作用,只要http能够用于不受保护的文件(实际上这可能是首选)。 我可以find如何使用mod-rewrite来做这个例子,除了它不适用于大众域(即使用<VirtualHost>)。 有什么诀窍实现这一目标? 如果不可能的话,我会很高兴得到一些关于如何做到这一点的提示。

CentOS Apache:基本身份validation返回403而不是401

我在/ var / www / html中有三个dirs,其中一个具有以下的.htacces: Order Allow, Deny Allow from all AuthUserFile /var/www/.htpasswd AuthGroupFile /dev/null AuthName 'lalalal' AuthType Basic Require user lala 向该目录发送请求时,服务器返回403而不是401。 请求其他目录时,服务器返回200。 另外有趣的是,当检查服务器信息页面时,没有一行代码指向受保护的目录,也没有涉及它的兄弟姐妹。 编辑 错误日志显示: 'Permission denied:/var/www/html/drugi/.htaccess pcfg_openfile:无法检查htaccess文件,确保它是可读的' .htaccess文件有644个权限。

报告渗透尝试到我的服务器

我需要一个渗透到我的服务器的日志文件。 理想情况下,这个日志应该包含所有的尝试,包括login,HTTPD活动,FTP活动,NFS和其他传统的开放端口。 但是,我有HTTPD,FTP和NFS就足够了。 CentOS中是否有这样的服务(或日志文件)?

如何configurationSELinux以允许Apache运行git

我有一个CentOS 6服务器,我试图让Apache Web服务器在目录中运行git pull 。 这个php文件很简单: <?php shellexec('cd /var/www/vhosts/domain;git pull'); 但是,当通过浏览器请求文件时, git pull命令不会运行。 暂时closuresSELinux运行setenforce 0允许它运行,但这不是一个安全的解决scheme。 / var / log / audit在请求文件时显示以下错误。 type=AVC msg=audit(1401182476.567:363184): avc: denied { read } for pid=11082 comm="ssh" name="known_hosts" dev=dm-0 ino=11272197 scontext=system_u:system_r:httpd_sys_script_t:s0 tcontext=unconfined_u:object_r:default_t:s0 tclass=file

我可以设置443作为默认的networking端口,这意味着它只能通过HTTPS和80端口访问

正如标题所说, 我想设置我的apache来监听443,并configurationSSL。 所以,我的问题是: 1)。 这是否意味着,我不会有端口80或任何其他端口是没有SSL? 2)。 我的网站只能通过https和没有http访问? 谢谢

mod_security:具有相同ID的另一个规则

我在CentOS 6.5上安装了httpd 2.2.15(最less安装时没有cPanel)和modsecurity 2.8。 当我启动httpd我得到这个错误: Starting httpd: Syntax error on line 23 of /etc/httpd/conf.d/modsecurity.conf: ModSecurity: Found another rule with the same id 第23行是: "id:'200000',phase:1,t:none,t:lowercase,pass,nolog,ctl:requestBodyProcessor=XML"

在RHEL 7上的Mod Perl

我为我的生活无法findRHEL 7的mod_perl包。有没有远程调用mod_perl的包,谷歌没有帮助。 我想要获得Redmine Git Hosting的设置,但是我需要在configuration文件(使用PerlLoadModule)中加载一个perl模块。 想法? yum install mod_perl Loaded plugins: langpacks, product-id, rhnplugin, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. This system is receiving updates from RHN Classic or Red Hat Satellite. No package mod_perl available. Error: Nothing to do

如何configurationApache“工作者”以获得最大的并发性

希望这是一个很好的问题,对于类似情况的任何人都有用。 最近,我接pipe了我公司的一位非常资深的Linuxpipe理员,并且第一次必须build立一个新的服务器来向我们的客户提供我们的内容。 我的前任在这个问题上留下了有限的文件,因为在他离开的时候,其他事项是更高的优先事项。 我已经广泛地提到了我有什么文档,加上以前的服务器configuration和大量的在线阅读来设置一切。 我正在构build的服务器的“堆栈”如下所示:CentOS 7,Apache 2.4.6,MariaDB 5.X,Tomcat 7服务于JSP / Servlet。 以前的生产安装使用了CentOS 5,旧版本的Apache和MySQL以及Tomcat 5.X. Apache是​​前端,它使用AJP连接到Tomcat后端。 大多数stream量将是HTTPS。 服务器,我认为是第9代惠普服务器,它有一个RAID 1arrays的32GB内存和固态硬盘。 在开始工作之后,我现在关心的是如何最大限度地同时为用户提供服务,我预计数百名用户的爆发并不罕见。 为了达到这个目的,我希望能够防止堆栈中的任何瓶颈:从Tomcat和MariaDB开始,并采取特定的措施,使我感到满意。 转到Apache,但我觉得更难理解我应该做什么。 有三种不同types的“工人”,我有三个主要问题优化: 1.有三个选项,prefork,mpm_worker和mpm_event。 我真的不明白如何configuration它们,但是我对每个function都有一个大致的了解。 2.与以前的服务器中的Apache不同,StartServers,ServerLimit,MaxRequestsPerChild等选项没有在/etc/httpd/conf/httpd.conf中列出。 可以有默认设置,我必须手动覆盖? 除了“上次手动添加”之外,还有什么原因可以在旧的httpd.conf中find,而不是新的? 我指的是在旧的httpd.conf中,在新的configuration文件中我看不到任何类似的东西,只有一个规范: // prefork MPM // StartServers:启动的服务器进程数 // MinSpareServers:保留备用服务器进程的最小数量 // MaxSpareServers:保留备用的服务器进程的最大数量 // ServerLimit:服务器生命周期中MaxClients的最大值 // MaxClients:允许启动的最大服务器进程数 // MaxRequestsPerChild:服务器进程提供的最大请求数 StartServers 8 MinSpareServers 5 MaxSpareServers 20 ServerLimit 256 MaxClients 256 MaxRequestsPerChild 4000 […]

上下文中的地址无效(错误代码为OS 10049)是什么意思?

我试图用一个相当接近标准的configuration文件启动一个Apache 2.2服务器的实例。 我做了一个小小的改动,因为我希望Apache能够提供一个单独的XML文件,与其他所有的文件分开,纯粹是为了在本地机器上进行testing。 改变是我把它插入到httpd.conf : # Based on http://httpd.apache.org/docs/2.2/vhosts/examples.html Listen 10.11.12.13:85 NameVirtualHost 10.11.12.13:85 <VirtualHost 10.11.12.13:85> DocumentRoot "C:\foo\bar" ServerName www.MyCompanyMyProjectFooBarTestURL.com </VirtualHost> 试图启动Apache导致了这一点: (OS 10049)请求的地址在上下文​​中无效。 :make_sock:无法绑定到地址10.11.12.13:85 没有可用的sockets,closures 无法打开日志 没有Apache的实例正在运行。 没有什么是使用端口85(或80或8080)。 10.11.12.13:85没什么特别的; 我只是认为这是一个不会干涉任何事情的知识产权。 这个错误是什么意思,我该如何解决?

为什么在机器上有很多httpd进程,而我只启动一个Apache的httpd服务?

在安装了apache的linux机器上,我通过ps -ef |search了httpd grep httpd, 我看了大约10个httpd进程,为什么呢? myuser 14732 1 0 Jan12 ? 00:00:10 /home/myuser/webserver/bin/httpd -k start myuser 14736 14732 0 Jan12 ? 00:00:00 /home/myuser/webserver/bin/httpd -k start myuser 31309 14732 0 Jan14 ? 00:00:00 /home/myuser/webserver/bin/httpd -k start myuser 31313 14732 0 Jan14 ? 00:00:00 /home/myuser/webserver/bin/httpd -k start 谢谢。