The article Installing Apache2 and PHP5 using mod_fcgid
shows how to run php5 with apache2-mpm-worker. The advanage of
apache2-mpm-worker over apache2-mpm-prefork is better overall apache2
performance.
1. Install apache2-mpm-worker and the fastcgi apache module libapache-mod-fcid
Code:
# apt-get install apache2-mpm-worker libapache2-mod-fcgid
2. Enable the Fastcgi apache module mod_fcgid
Code:
# sudo a2enmod fcgid
3. Install php5-cgi
and the command-line version php5-cli
Code:
# sudo aptitude install php5-cgi php5-cli
4. Add the following to /etc/apache2/httpd.conf or place these
basic configuration settings in a file under /etc/apache2/conf.d. For
example, /etc/apache2/conf.d/00-myconf ("00-" will help insure it is
read first before other /etc/apache2/conf.d files, which is necessary).
Code:
<Directory /var/www>
AddHandler fcgid-script .php
FCGIWrapper /usr/lib/cgi-bin/php5 .php
Options +ExecCGI
</Directory>
# If you have Aliases provide php support for them (Here we provide php support for scripts in /usr/share's subdirectories)
Alias /aptitude /usr/share/doc/aptitude/html/en
Alias /apt /usr/share/doc/apt-doc
<Directory /usr/share>
AddHandler fcgid-script .php
FCGIWrapper /usr/lib/cgi-bin/php5 .php
Options ExecCGI FollowSymlinks Indexes
</Directory>
5. Then, for each virtual host configuration file you have in /etc/apache2/sites-available, add ExecCGI
within a <Directoy /path-to-site> block (placed within your <VirtualHost> block). For example,
# cat /etc/apache2/sites-availabe/yourdomain.com
Code:
<VirtualHost *:80>
ServerAdmin youremail@yourdomain.com
ServerName yoursite.tld
ServerAlias www.yourdomain.tld *.yourdomain.tld
DocumentRoot /var/www/yourdomain.com
ErrorLog /var/log/apache2/yourdomain.tld-error.log
CustomLog /var/log/apache2/yourdomain.tld-access.log combined
<Directory /var/www/yourdomain.com>
Options +ExecCGI
AllowOverride All
Order Allow,Deny
allow from all
</Directory>
LogLevel warn
ServerSignature On
</VirtualHost>
Note: ExecCGI
was turned on in
/etc/apache2/sites-available/default for /var/www and its
subdirectories, so it is not strictly necessary within the
<VirtualHost > block shown here. Using +ExecCGI
adds fastcgi support to the Options in force. Options don't merge with prior options (they replace them) unless +
is used. You can specify entirely different Options
, but you must at a minmum have ExecCGI
, if you want php support for your virtual host.
6. For any other <Directory /some/other/path> blocks you have,
say, for virtual hosts, which are not subdirectories of /var/www or
/usr/share, add
<Directory /some/other/path>
AddHandler fcgid-script .php
FCGIWrapper /usr/lib/cgi-bin/php5 .php
Options +ExecCGI
# add other Options you might need, but ExecCGI is required
# . . .
</Directory>
7. Enable your virtual host
Code:
#sudo a2ensite yourdomain.com
7. And reload the apache configuration
Code:
# sudo /etc/init.d/apache2 force-reload
or just restart apache2
Code:
# sudo /etc/init.d/apache2 restart
分享到:
相关推荐
项目的名称“nairn-mpm-fea”可能是以项目创始人或主要贡献者的名字命名,暗示了它在计算力学领域的个人或团队贡献。这个项目始于2015年8月14日,当时是从某个特定的开发平台上导出并独立出来的,这表明它在发展过程...
- **软件包信息**:安装过程中会显示将要安装的额外软件包列表,例如 `apache2-mpm-worker`, `apache2-utils`, `apache2.2-bin`, `apache2.2-common`, `libaprutil1-dbd-sqlite3`, `libaprutil1-ldap`, `ssl-cert` ...
sudo apt-get remove apache2 apache2-mpm-prefork apache2-utils apache2.2-common \ libapache2-mod-php5 libapr1 libaprutil1 libdbd-mysql-perl libdbi-perl \ libmysqlclient15off libnet-daemon-perl ...
通过深入学习和使用"taichi_mpm-master",开发者可以学习到如何利用Taichi库进行物理模拟,掌握高性能计算和GPU编程技巧,同时也可以了解到MPM方法在实际问题中的应用。这对于计算机图形学、游戏开发、工程仿真等...
5. **性能优化**:Apache 2.2引入了MPM(多进程模块),如Prefork MPM和Worker MPM,它们分别对应于进程模型和线程模型,以提高服务器处理并发请求的能力。用户可以根据服务器硬件资源和负载情况选择合适的MPM。 6....
本文介绍了在 Ubuntu 下安装 PHP5 和 PDO_MYSQL 的详细步骤,包括安装 Apache2、PHP5、MySQL 服务器及其相关组件,并提供了两种安装 PDO_MYSQL 的方法。通过这些步骤,你可以成功地在 Ubuntu 上搭建一个功能齐全的 ...
在IT行业中,尤其是在Web开发领域,Apache和PHP的集成是一个常见的需求,特别是在Windows操作系统上。本文将详细讨论如何在Windows环境下搭建PHP与Apache的集成环境,以"php-5.3.1-Win32-VC6-x86+apache2.2.25"为例...
- **MPM(多进程模块)**:Apache 2.4支持多种MPM,如`prefork`、`worker`和`event`,分别对应于不同的进程/线程模型,以适应不同的服务器负载需求。 - **HTTP/2支持**:相比于HTTP/1.1,HTTP/2提供了更高效的连接...
具有切割和耦合功能的高性能 MLS-MPM 求解器 (CPIC) (现已获得 MIT 许可!) 具有位移不连续性和双向刚体耦合的移动最小... 随意在商业上使用它。 如果我们的软件对您有所帮助,我们将不胜感激。 [介绍和演示视频
在 Worker 工作模式下,Apache 服务器使用多个子进程来处理客户端请求,每个子进程可以处理多个请求。然而,在 Worker 工作模式下,Apache 服务器也存在一些限制,例如 MaxClients 设置不足的问题。 MaxClients ...
./configure --host=arm-linux --prefix=/usr/local/cross-apache --enable-so --with-mpm=prefork --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --with-mysql=/path/to/mysql --...
本指南将详细讲解如何在Windows 64位操作系统上安装和配置Apache 2.4.6版本。 1. **下载Apache 64位版本** 在Windows上安装64位Apache,首先需要从官方或可靠的第三方站点下载。Apache Lounge...
本文主要介绍如何在Linux环境下安装和配置Apache Web服务器以及PHP解析器,以构建一个基础的LAMP(Linux、Apache、MySQL、PHP)环境。以下是详细步骤: A. 使用Yum安装Apache和PHP 1. **安装Apache**: - `yum ...
2. **事件模型**:在Apache2.4中,事件模型替代了旧的多进程(MPM)模型,如prefork和worker。事件模型提高了并发处理能力,降低了资源消耗,尤其适合高流量网站。 3. **HTTP/2支持**:Apache2.4开始支持HTTP/2协议...
2. **多线程处理**:在Windows环境下,Apache通常采用多线程模型(MPM)来处理并发请求,比如WinNT MPM,它可以更有效地利用系统资源,提高响应速度。 3. **虚拟主机**:Apache支持多个虚拟主机,可以在同一台...
1. **MPM(多进程模块)改进**:Apache支持多种MPM,如Prefork、Worker和Event。2.4版中,Event MPM得到了优化,它结合了预派生和异步处理,提高了并发连接的处理效率。 2. **更好的内存管理**:内存分配和管理在...
### Apache Prefork、Worker 和 Event 三种 MPM 的详解 #### 一、Prefork MPM **Prefork MPM** 是 Apache 提供的一种多处理模块(MPM),它实现了非线程化的、预分叉的 Web 服务器架构,类似于 Apache 1.3 的工作...
2. **事件模型**:与早期版本的多进程(MPM_prefork)和多线程(MPM_worker)模型相比,2.4版本提供了MPM_event模型,提高了高并发场景下的性能。 3. **更好的内存管理**:优化了内存分配策略,减少了内存碎片,...
2. **事件模型**:在2.4版本中,Apache引入了新的事件MPM(多进程模块),这提高了服务器在高并发环境下的性能,因为它可以更有效地处理多个连接。 3. **访问控制**:Apache 2.4提供了更灵活的授权和认证机制,如...
1. **模块化设计**:Apache 2.4在架构上进行了模块化的改进,使得服务器组件更易于管理和扩展。核心功能被拆分为多个模块,允许管理员根据需求选择加载必要的模块。 2. **事件模型**:新的事件处理模型提供了更高的...