Articles of apache 2.2

将http://www.example.com/index.htmlredirect到http://www.example.com/(无循环)

出于美学原因(我更喜欢URL和页面之间存在严格的一对一映射),我不喜欢http://www.example.com/index.html和http:// www。 example.com/通过两个不同的URL产生相同的内容。 我想有http://www.example.com/作为规范的。 明显的解决scheme: Redirect permanent /index.html / 是错误的(无尽循环)。 更好的解决scheme? 这似乎令人惊讶的困难。

这很多的Apache实例是否正常?

我们在Ubuntu 8.04.4 LTS \n \l VPS实例上运行Apache 2.2.8-1ubuntu0.15 ,正如我通过问这个问题所确定的那样。 当我发出pgrep apache2 ,我得到以下内容: 2691 24517 25330 25669 25672 25795 25796 25809 25825 26401 26402 那是11个单独的apache2实例! 这是正常的吗? 如果不是,我该怎么办呢?

PHP无法分配内存

今天早上去办公室的路上,我们共享的VPS上的每个网站都开始给出相同的错误(几次,而不是典型的memory_limit错误,这是致命的): Warning: Unknown: Unable to allocate memory for pool. in Unknown on line 0 共享服务器是一个运行cPanel的64位OpenVZ容器。 主机上只有〜6个VPS,这是最大的一个,只有4GB。 主机本身有24GB RAM。 如下图所示,主机和VPS的内存使用率都很低。 CPU使用率/磁盘/主机似乎都是正常的。 RlimitMem设置为583653034 ,但内存使用情况与通常情况大致相同。 Apache 2.2,PHP 5.2(mod_php) 重新启动Apache现在已经纠正了这个问题。 但是,我想阻止它再次发生,我不知道是什么限制了内存。 RlimitMem设置为583653034 ,但内存使用情况与通常情况大致相同。 似乎有很多内存:是什么原因造成了这个错误? VPS内存使用情况 主机内存使用情况 APC信息 apc.ttl=0 apc.shm_size=0 apc.mmap_file_mask=(blank) 1段(32.0 MBytes)(mmap内存,pthread互斥锁)

htaccess的vrs httpd.conf?

如果您可以使用httpd.conf,是否应该使用htaccess文件仍然是真的? Apache网站上说:“一般来说,你不应该使用.htaccess文件,除非你没有访问主服务器configuration文件。” 但是我不知道这个build议多大年纪,或者这个build议还是相关的。 我正在一个只使用httpd.conf文件的大型网站上工作。 但是这个过程非常漫长,当然需要重新启动。 随着主站点下运行的部门站点的数量(以及所有使用httpd.conf文件),这是一个不利的变化。 现在我们正在运行wordpress 3(多站点configuration)。 我想testingconfiguration规则的一些更改,但目前我唯一能做的就是继续重新启动apache,我不想在活动网站上做这些。 (特别是重写规则似乎在一些博客文章被“www”所占据,而另一些则不是) 我正在考虑在wordpress文件夹中启用.htaccess,但这是明智的吗? 我们的服务器很忙(根据谷歌的说法,每天大约有6万页的浏览量),但是没有太费劲。 目前的最佳做法是什么? 服务器现在是否足够令人担忧,与轻松pipe理.htaccess文件相比,可能轻微的性能下降是可以忽略的?

适用于PHP5 Apache Linux服务器上的两个开发人员团队的权限

我希望有人能指出我对Linux权限的正确方向。 我知道如何计算什么权限,了解改变它们的方法,并可以处理肮脏的工作,我只是不确定什么权限,我应该给予适当的安全。 我一直在Linux服务器上进行根目录的开发,所有文件的权限设置为644(位于/ var / www)。 正如我正在采取一个新的开发人员,我想build立适当的用户,仍然可以编辑。 我不想在这个时候使用版本控制。 在我看来,通过创build两个新用户(一个用于我,一个用于新开发人员),将我们添加到一个通用开发组,并将所有文件组所有者更改为该开发组,我可以在664处对所有文件进行chmod维护自由编辑。 通过如上所述设置权限,我的文件仍然(相对)安全的权限明智吗? 编辑:find一个伟大的资源在这里为未来的任何人看。

VirtualHosts内部或外部的目录?

在VirtualHosts内部或外部放置Directory标签有什么区别? 我发现一个configuration文件有几个VirtualHosts里面都有相同的Directory标签,外面是一样的; 所以我想摆脱这种重复,但我不完全理解所涉及的语义。

Hostname Based SSL(单个IP上的多个SSL虚拟主机)背后的技术是什么?

众所周知的PaaS提供商Heroku为SSL问题提供了多种解决scheme。 其中之一是一个名为Hostname Based SSL的产品 这不是SNI。 他们声称它可以在任何configuration的每一个浏览器上工作,但是还有其他的缺点,主要是(引用文档): 基于主机名的SSL不能在根域中工作,因为它依赖于自定义域名的CNAME别名。 主机名SSL仅适用于一个域。 例如,www.domain.com可以工作,但是如果将secure.domain.com的第二个证书添加到应用程序中,则不起作用。 我们基于主机名的SSL产品目前剥离了一些HTTP头文件; 例如,当您的应用程序需要查看客户端的IP时,这可能是一个问题。 使用这个定制构build解决scheme,Heorku可以在一个IP地址上提供多个SSL站点,并声称它可以跨越任何东西。 任何人都可以解释这个产品背后的技术方面和技术?

是否有可能通过内容types路由请求到不同的应用程序?

我正在devise一个JSON API,并且我想使用某种内容协商来对API进行版本化。 我目前正在计划使用供应商的MIMEtypes来做到这一点。 虽然我完全可以在应用程序级别做到这一点,但我认为最好在HTTP服务器级别做到这一点。 这是可能的Apache或Nginx的? Content-Type看起来像: application/vnd.vendorname-v1+json或可能使用参数: application/vnd.vendorname+json;v=1

Apache重写了多个条件

我有一个从旧域名(例如olddomain.com)迁移到新域名(例如newdomain.com)的网站。 对于search引擎优化的原因,我需要重写所有的网站stream量主要新的域名(如www.newdomain.com)。 不幸的是,我不知道如何添加多个ORtypes的重写条件。 看来,所有的条件,下面的示例代码,我得到一个AND条件。 <VirtualHost *:80> ServerAdmin webmaster@localhost ServerName newdomain.com ServerAlias www.newdomain.com ServerAlias olddomain.com ServerAlias www.olddomain.com DocumentRoot /var/www/newdomain.com/www/ <Directory /> Options FollowSymLinks AllowOverride All </Directory> ErrorLog /var/log/apache2/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn RewriteEngine on RewriteCond %{HTTP_HOST} ^olddomain.com [NC] RewriteCond %{HTTP_HOST} ^www.olddomain.com [NC] RewriteCond %{HTTP_HOST} ^newdomain.com […]

Apache – 禁用范围请求 – 缺点?

由于针对Apache的字节范围实现(CVE-2011-3192, 请参阅此处 )有一个可用的漏洞,我想禁用它,直到我的发行版(Debian,Ubuntu)发行官方补丁。 这些网站都是没有大量下载的“正常”网站。 除了无法恢复的下载function,禁用该function还有什么缺点吗? PS:我通过启用mod_headers和mod_headers设置范围头使用下面的行禁用该function: RequestHeader unset Range