Articles of apache 2.2

php脚本运行在Apache UID下

我有一个VPS,运行与Apache 2和PHP 5的directadmin。它一切正常,直到今天,因为我发现,PHP脚本是在Apache下执行:阿帕奇,而不是文件的所有者用户。 这搞砸了整个系统,但主要的问题是,我不明白为什么会suphp突然停止工作? 一些信息: root # php -v PHP 5.2.17 (cli) (built: Aug 17 2011 21:02:28) Copyright (c) 1997-2010 The PHP Group Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies httpd.conf文件 User apache Group apache … <Directory "/var/www/html"> Options -Indexes FollowSymLinks AllowOverride All Order allow,deny Allow from all <IfModule mod_suphp.c> suPHP_Engine On suPHP_UserGroup webapps […]

如果只使用虚拟主机,我应该在httpd.conf中将ServerName设置为什么?

我有一个有两个专用IP的Linux服务器,我用它来主持10个不同的站点,使用Apache的虚拟主机function。 每个站点都有自己的域名,我使用NameVirtualHosts来根据请求的域来将请求定向到正确的文件夹,任何不匹配的东西(比如input一个IP地址)都会被定向到默认页面<VirtualHost _default_:*> 。 我的问题是,因为我有多个IP,所有可能的请求都作为虚拟主机处理,我应该如何将ServerName设置为虚拟主机之外的httpd.conf文件? 它甚至重要吗?

服务器CentOS / PHP升级后返回内部错误

我需要一些指导来解决我的服务器。 我有一个与CentOS,Apache,Linux,PHP和plesk的VPS。 昨天我用PHP5.1.6到5.3.8和CentOS做了一个更新。 更新php.ini并重新启动services.but出了错误,因为从那时起,服务器正在向所有站点返回一个500内部服务器错误。 在尝试加载站点时,我的apache日志不显示任何活动,日志只显示服务器重新启动时的活动,并且没有显示错误。 我能够从ssh和php运行.php文件-v返回版本5.3.8 我应该在哪里看? 可能会丢失什么?

新的Apache2.2安装会覆盖index.html(Windows)

我刚刚在Windows上更新了我的Apache2(v2.2.21)安装 – 首先卸载旧版本,然后安装新版本。 后来,我非常惊讶,而不是我的默认(和相当大) index.html我find了一个非常“有用的” 它的作品! 索引文件而不是… 尽pipe手册中明确指出 : 而且,如果您已经有一个名为htdocs \ index.html的文件,它将不会被覆盖(也不会安装index.html.default)。 这意味着在现有安装上安装Apache应该是安全的,尽pipe在安装之前必须停止现有的运行服务器,然后在安装完成后启动新服务器。 不幸的是,这个文件的最后一个备份不是最近的,大量的工作都放在它之间。 那么 – 我做错了什么? 或者它是Apache的一个bug? 或者甚至更好,我可以以某种方式恢复文件? configuration文件没有被覆盖。

Apache:redirect所有命中子目录(301)?

可能是一个简单的问题,但我似乎无法解决:我最近从头开始创build一个新的网站,以取代旧的网站。 旧网站有一个很好的SEO排名,这显然是我想保持的。 由于新网站也有一个新的结构,有一些来自旧网站/结构的目录,我已经完全放弃了。 然而,有相当多的指向这些目录的外部链接,或者更具体地说是旧目录中的文件。 所以我的问题归结为:如何redirect所有/任何命中某些子目录中的文件? 例如: www.mydomain.com/oldsubdirectory/somefile1.file – > mydomain.com/newdirectory www.mydomain.com/oldsubdirectory/somefile2.anothertypeoffile – > mydomain.com/newdirectory www.mydomain.com/oldsubdirectory/somefile3.fileofsometype – – > mydomain.com/newdirectory

如何更改在CentOS中运行Apache Web服务器的用户?

我有一个名为apps/cache目录。 当脚本将某些文件写入该目录时,这些文件由nobody用户拥有。 当然,那些文件和文件夹不能被任何用户编辑。 有没有办法可以改变用户nobody ?

无法通过清漆cachinglogin

我在我的新服务器上设置Active Collab Site。 设置如下 互联网> —>清漆—-> apache 但我不能通过清漆cachinglogin到网站..但我可以通过Apachelogin到网站。 这是我的VCL文件 backend default { .host = "localhost"; .port = "8080"; } acl purge { "localhost"; } sub vcl_recv { if (req.request == "PURGE") { if (!client.ip ~ purge) { error 405 "Not allowed."; } return(lookup); } if (req.url ~ "^/$") { unset req.http.cookie; } } sub vcl_hit […]

大量的stream量来袭。 准备技巧

寻找有关提高服务器级性能的技巧,因为我的客户端在接下来的几天内会获得一些大量的stream量。 使用1and1云vps并增加了服务器上相当高的内存。 有什么我需要做的,以使Apache开始使用这些资源?

加载httpd启动后,httpd加载'Test Page'

我最近添加了httpd在启动过程中启动这样做: cd /etc/rc.d/rc5.d/ ln -s /etc/init.d/httpd S80httpd 虽然httpd是在启动时启动的,但似乎是在位于/etc/httpd/conf/httpd.conf中的httpd.conf中设置的DocumentRoot不起作用,并且Fedora Test Page被加载。 当我用httpd -k start手动启动httpd httpd -k start ,一切正常。 我可能还没有正确理解RC脚本s<number>script / k<number>script命名约定的<number>部分。 虽然,我知道它是用来表示脚本在runlevel控制脚本运行期间的执行顺序。 我从启动时如何自动启动Apache获取S80httpd 。 究竟发生了什么? 我正在使用Fedora 15和Apache/2.2.21 。

为什么这个模式在匹配preg_match时不符合RewriteCond中的QUERY_STRING?

这是我的.htaccess文件。 RewriteEngine on RewriteCond %{QUERY_STRING} ^(run=[a-z0-9A-z]{13})$ RewriteRule %{QUERY_STRING} \? [L] 我所做的就是为所有QUERY_STRING重写QUERY_STRING ,类似于run=4f13665700694 ,什么也不做。 URL示例: http://thinkingmonkey.me/runs/?run=4f13665700694 : http://thinkingmonkey.me/runs/?run=4f13665700694 。 所以,RewriteCond应该匹配。 但是,上述不起作用。 但是,模式似乎是正确的。 因为, preg_match和RewriteRule使用PCRE – Perl Compatible Regular Expressions 。 我尝试使用preg_match 。 $subject = "run=4f13665700694"; $pattern = "/^(run=[a-z0-9A-z]{13})$/"; echo preg_match($pattern, $subject); 除了上面的例子,还会输出: 1 即成功匹配。 我不懂为什么。 我在这里错过了什么?