Articles of apache 2.2

虚拟主机设置,相同的IP地址,不同的DirectoryIndex的

我正在尝试在Apache中设置2个虚拟主机条目,但是我不知道如何完成我想要做的事情。 我有两个域名,都指向相同的IP地址。 我需要DirectoryIndex是不同的,这几乎是条目中的唯一区别。 我有以下设置: <VirtualHost *:80> ServerName firstdomain.com ServerAdmin [email protected] DocumentRoot "/srv/www" DirectoryIndex /portals/site/index.html </VirtualHost> <VirtualHost *:80> ServerName seconddomain.com ServerAdmin [email protected] DocumentRoot "/srv/www" DirectoryIndex /portals/site/index_fr.html </VirtualHost> 不知道我需要做什么不同,但第二项不起作用。 唯一真正的区别是我需要第二个域指向一个不同的DirectoryIndex 。 如果有更好的方法来实现这一点,将不胜感激。

在Apache中减lessworker MPM的内存

我已经从prefork MPM转移到了工人MPM,原因是我在VPS上遇到了一个进程限制。 但是,切换后内存使用量增加了(这是因为工作者MPM应该占用更less的内存?)。 他们大多属于php-cgi进程。 有什么我做错了吗? 我有大约20个网站,每个都有不同的fcgi包装脚本。 这可能是一个原因吗?

多个PHP版本作为CGI运行

我试图安装PHP的第二个版本,与当前版本的PHP一起运行。 我已经从github(5.5-DEV)编译了最新的php源代码,并且正在尝试将其作为CGI运行。 这是我的虚拟主机configuration: <VirtualHost *:8055> DocumentRoot /Library/WebServer/Documents/ ScriptAlias /cgi-bin/ /usr/local/php55/cgi Action php55-cgi /cgi-bin/php-cgi AddHandler php55-cgi .php <Directory /Library/WebServer/Documents/> Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Order Allow,Deny Allow from all </Directory> DirectoryIndex index.html index.php </VirtualHost> 但是当我去http://127.0.0.1:8055/info.ph p,我得到以下错误: 被禁止 You don't have permission to access /cgi-bin/php-cgi/info.php on this server 编辑 我现在正在切换 LoadModule php5_module /usr/local/php54/libphp5.so 和 LoadModule […]

mod_security2.so:未定义的符号:ap_unixd_set_gl

service httpd restart Stopping httpd: [ OK ] Starting httpd: httpd: Syntax error on line 205 of /etc/httpd/conf/httpd.conf: Cannot load /etc/httpd/modules/mod_security2.so into server: /etc/httpd/modules/mod_security2.so: undefined symbol: ap_unixd_set_global_mutex_perms [FAILED] 我的httpd文件: LoadModule unique_id_module modules/mod_unique_id.so LoadFile /usr/lib/libxml2.so #LoadFile /usr/lib/liblua5.1.so LoadModule security2_module modules/mod_security2.so 有任何想法吗? 谷歌什么都没有。 我遵循这些指导原则: https : //github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual#wiki-SVN_Access Apache是​​2.2.15 PHP是5.3.3 我通过yum安装了apache / php

在不同的环境下使用AddHandler将文件parsing为PHP

我现在很困惑如何在不同的环境中将文件parsing为带有AddHandler PHP。 本地服务器 : Windows 7 / Apache2.2 / PHP 5.2( thread safe ) AddHandler x-httpd-php .php # does not work AddHandler x-httpd-php52 .php # does not work AddHandler application/x-httpd-php .php # works 而我刚刚升级PHP到5.3(切换到non thread safe ) AddHandler x-httpd-php .php # does not work AddHandler x-httpd-php53 .php # does not work AddHandler application/x-httpd-php .php # […]

Apache2不运行的Rails

我有一个像我的虚拟主机的Apache: <VirtualHost *:81> ServerName sandbox.myserver.com DocumentRoot /var/www/mysite/current/public <Directory /> Options FollowSymLinks AllowOverride None </Directory> # Insert filter SetOutputFilter DEFLATE # Netscape 4.x has some problems… BrowserMatch ^Mozilla/4 gzip-only-text/html # Netscape 4.06-4.08 have some more problems BrowserMatch ^Mozilla/4\.0[678] no-gzip # MSIE masquerades as Netscape, but it is fine # BrowserMatch \bMSIE !no-gzip !gzip-only-text/html # NOTE: Due […]

mod_vhost_alias +通配符+自定义php.ini

这是我的httpd.conf使用mod_vhost_alias。 docroot总是在/ home / username / domains / domainname / public_html。 <VirtualHost *:80> ServerName *.abc.com ServerAlias *.abc.com ServerAdmin [email protected] VirtualDocumentRoot /home/%-3/domains/%0/public_html UseCanonicalName OFF <Directory /home/*> AllowOverride AuthConfig FileInfo Indexes Limit Options=Indexes Options -Includes -Indexes +ExecCGI +SymLinksIfOwnerMatch +FollowSymLinks </Directory> </VirtualHost> 这工作,但问题是日志和自定义php.ini。 就我而言,我不能这样做: CustomLog /var/log/httpd/domains/*.abc.com.bytes bytes OR something like: FcgidWrapper '/usr/local/php/php5/bin/php-cgi -c /usr/local/php/php5/etc/users/%-3.ini' .php 任何想法如何得到日志和php.inis的正确path? 我看了mod_macro,但它仍然需要“使用xxxx abc.com”声明和Apache重新加载,这是不是一个选项。

Rails应用程序返回新的ServerAlias的HTTP 422 – 仅限Internet Explorer

我有一个在Mac OS X(apache2)上运行的长期Rails应用程序。 该设置使用Apache虚拟主机和Passenger。 Rails应用程序也使用HTTP基本authentication。 我需要将应用程序从一个url域迁移到另一个域 – 两个域名可以同时访问一段时间。 为此,我已经在Passenger Virtual Hostconfiguration中将新的域名添加为现有域名的ServerAlias。 我现在可以使用旧版url和来自Safari,Chrome,Firefox或Internet Explorer的新url浏览Rails应用程序。 我也可以使用Safari,Chrome或Firefox将'HTTP发布'更新到Rails应用程序。 都好。 除了尝试从Internet Explorer发布更新导致Rails应用拒绝更新之外, Rails应用程序日志包含消息, ActionController::InvalidAuthenticityToken (ActionController::InvalidAuthenticityToken): 我有其他域和别名在同一台机器上工作得很好。 任何build议是什么导致Rails应用程序拒绝来自IE的post将不胜感激。 更新:我已经尝试将新域名更改为ServerName,并将旧域名更改为ServerAlias,但仍然使用新域名获得422。 我很困惑。

Node.js应用程序和wordpress在相同的VPS

所以目前我的linode(ubuntu 11.10)使用连接的侦听端口80的vhost中间件为我提供了三个node.js应用程序。下面是vhost如何设置一个域的例子: var portfolio = require('./bootstrap-portfolio/lib/app.js'); var server = express(); server.use(express.vhost('sencedev.com',portfolio)); server.use(express.vhost('www.sencedev.com',portfolio)); server.listen(80); 不过,我现在想要添加一个wordpress安装到我的vps。 在过去对我来说,这意味着传统的Apache安装; 然而,我有点不确定如何node.js +一个不同的networking服务器(Apache或Nginx)应该交互。 任何想法,我应该如何处理托pipewordpress + node.js在同一个盒子?

在共享的apache上保护php

我将在服务器上安装apache + php,其中两个用户A和B将部署他们的网站。 为了安全起见,我试图实现用户空间的隔离:那就是站点A的脚本不应该能够读取站点B中的文件。 为了达到这个目的,我安装了suphp。 用户A的网站文件由A:A拥有,Perm = 700,B的用户由B:B拥有,Perm = 700。 Suphp工作得很好,但是apache抱怨读取.htaccess的权限。 我怎样才能让apache读取A和B的每个目录中的.htaccess,同时保持站点A和站点B之间的隔离? 我玩所有权(组= www数据)和权限(750),但我发现没有办法保持隔离授予。 任何想法? 也许通过以root身份运行apache,但在这种情况下是否有任何缺点?