Articles of Apache的2.2

configurationApache以使用WSGI处理子path

我试图设置Apache,Django和mod_xsendfile,以允许我使用Django身份validation来控制对某些文件的访问,同时仍然使用Apache发送实际的文件数据。 我有这个configuration的问题: # Some files must be publicly available without the Django auth check. # When I comment this out, public media is not accessible but the WSGI script for # /media/attachment DOES get called. # So I think I need to somehow exclude /media/attachment from the effect of this Alias Alias /media/ /var/www/vhosts/domain.com/subdomains/project/httpdocs/media/ # […]

Apache为不同的网站运行不同的网站

我需要做什么(可能是虚拟主机指令)从/ var / www / link1运行www.example.com/link1,从/ home / name / link2运行www.example.com/link2? 所有我在网上看到的东西是关于运行不同的领域,有人可以指向我正确的方向,将不胜感激!

Webmin / Virtualmin是否覆盖像Plesk这样的apache conf文件?

我想知道Webmin或者Virtualmin是否会覆盖像Plesk这样的apache conf文件。 目前,我正在使用Plesk运行一些服务器,但是在某些Plesk事件发生时没有编写一些脚本,我不能做一些简单的事情,比如更改虚拟机监听的端口。 一旦在Plesk中进行更改,Plesk将只覆盖apache conf文件。 我通过命令行来pipe理大部分服务器pipe理员,但是我们这里有一些人喜欢创build一个域或者ftp用户。 对于我摆脱Plesk,我至less需要一个简单的解决scheme,以取代其他用户使用的基本function。 免费的东西是首选,但我打开任何build议,如果Webmin / Virtualmin不会为我工作。

Apache <Directory / var / www / *>与<Directory / var / www />

有什么区别 <Directory /var/www/> Options All -Indexes </Directory> 和 <Directory /var/www/*> Options All -Indexes </Directory> ? 第一个不起作用 ,第二个在我的服务器上工作。 而且似乎没有任何其他configuration文件覆盖该设置。 我以为他们的意思是一样的。 编辑:事实certificate,有另一个configuration文件影响服务器覆盖这一个,所以这是导致意想不到的结果。 我想有*取代了其他configuration文件。

防止Apache自动分配文件扩展名

我有一个LAMP服务器。 当用户转到url http://mysite.com/helloworld时 ,apache会自动决定渲染helloworld.php,而不是给404找不到错误。 我没有看到任何.htaccess文件导致重写。 我在虚拟主机文件中看不到任何重写规则。 如何禁用这个.php文件的自动检测,并提供404错误?

Apache2虚拟主机:www agnostic(* .hostname.com)

我想设置我的虚拟主机不需要WWW。 我希望它是不可知的子域。 这怎么能做到呢? 谢谢! 编辑:对不起,我不清楚。 我在同一个Apache安装上托pipe多个站点,每个站点都有自己的虚拟主机。 我希望每个人都可以使用和不使用www,即:www-agnostic。 所以www.google.com和google.com都被同一个虚拟主机所捕获。 谢谢!

通过http:// ipclosures对网站的访问,但允许通过http://域

我不得不通过ipclosures访问网站(通过http://203.0.113.11closures访问),但通过域访问应该仍然可用。 我已阅读http://httpd.apache.org/docs/2.0/vhosts/name-based.html (“ Using Name-based Virtual Hosts ),按照build议进行configuration: NameVirtualHost *:80 <VirtualHost *:80> ServerName www.domain.tld ServerAlias domain.tld *.domain.tld DocumentRoot /www/domain </VirtualHost> 重启httpd,但是这个VirtualHost仍然可以通过ip。 我究竟做错了什么?

在access_log中包含请求的主机名

我想我的access_log列出客户端请求的主机名(例如,当请求http://www.example.com/test时,我应该在日志中看到“www.example.com”)。 到目前为止我发现的唯一的事情是在LogFormat指令中使用%v,但是这只给出了“服务于请求的服务器的规范服务器名”(如Apache所描述的http://httpd.apache.org/docs /2.0/mod/mod_log_config.html#formats )。 这对使用未在ServerName指令中指定的主机名的请求无效。 有没有办法logging所请求的主机名? 谢谢

从Web服务器获取原始输出

对于研究,我期待得到apache在响应请求时发送的实际原始输出,包括所有获取数据,头文件和html。 我将如何去做这件事? 我努力了: wget –output-document=response.txt -S "http://thewebsiteinquestion.com" 这显示了我所有的响应头都很好地分层,并将HTML发送到response.txt,但我真的很想看到原始文本以及如何格式化。

如何升级apache2的PCI

扫描了我的网站以符合PCI规范。 find的漏洞: Apache HTTP Server Zero-Length Directory Name in LD_LIBRARY_PATH Vulnerability, CVE-2012-0883 Apache HTTP Server mod_rewrite Terminal Escape Sequence Vulnerability, CVE-2013-1862 Apache HTTP Server XSS Vulnerabilities via Hostnames, CVE-2012-3499 CVE-2012-4558 该站点在Ubuntu 12.04 LTS上的apache2(2.2.22-1ubuntu1.4)上运行。 “apt-get upgrade”表示它已经是最新版本了。 我发现http://ubuntuforums.org/showthread.php?t=2011603并将apache2升级到2.4。 但升级后,apache2没有启动,给了我可怕的错误。 所以我删除它,并重新安装apache2 2.2.22。 我search这个问题,发现一些页面提到补丁,但我不明白他们。 我的服务器pipe理技能非常有限。 你能帮我解决这个问题吗? 在我的情况下,使apache2 PCI兼容的最简单的方法是什么? 谢谢。 山姆