使用 PHP 和 MySQL 安装和配置 Nginx Fedora

如果您曾经使用过 Web 服务器,那么您可能已经熟悉两个最广泛使用的 Web 服务器 Apache 和 IIS。 但是您可能还没有听说过的一个 Web 服务器是一个新兴的 Web 服务器,称为 Nginx(或引擎-x). Nginx 是第三大使用最广泛的 Web 服务器,并且正迅速成为许多系统管理员的首选 Web 服务器。

Nginx 解决了许多高负载网站可能遇到的许多性能问题,方法是使用异步事件驱动方法而不是 Web 服务器使用的面向过程的方法,例如 Apache. 这意味着 Nginx 每秒能够处理比任何其他 Web 服务器更多的请求。

Nginx 还标配了负载平衡和反向缓存代理,不像 Apache 这需要安装单独的模块。 此外,Nginx 还具有充当邮件代理和流式传输多种类型视频的能力。

如果您仍然不相信这里有一些使用 Nginx 的流行网站:

WordPress.com

黄页网

WhitePages.com

葫芦网

4chan.org

SourceForge.net

TorrentReactor.net

安装 Nginx

我们需要做的第一件事是使用 yum 安装 nginx。

 yum –y install nginx

接下来,您需要使用 chkconfig 将 nginx 设置为在启动时运行,然后启动 nginx 服务。

 chkconfig nginx on
service nginx start

启动 Nginx 后,默认 Nginx 页面应该会通过在 Web 浏览器中访问您的服务器 IP 来迎接您(例如 https://127.0.0.1)。

安装 PHP 和 MySQL

与大多数其他 Web 服务器一样,Nginx 支持 PHP 和 MySQL,但需要先安装和配置一些东西。

首先,您需要安装 PHP 和 MySQL 服务器。 您还可以在此时安装模块,具体取决于您的网站需要哪些模块。 您将需要的两个基本模块是 mysql 和命令行模块。 您还需要安装 lighthttpd fastcgi 以通过 CGI 传递 PHP。

yum install mysql mysql-server php php-mysql php-cli lighttpd-fastcgi

接下来,您将需要启动 MySQL 服务器服务并将其设置为在启动时运行。

service mysql start
chkconfig mysql on

如果您还没有这样做,您还需要为 MySQL 设置密码。

 mysqladmin –u root password

接下来,您需要编辑位于 /etc/nginx/nginx.conf 的 nginx 配置文件

您首先需要取消注释“将 PHP 脚本传递给在 127.0.0.1:9000 上侦听的 FastCGI 服务器”下的所有行。

{codecitation}位置 ~ .php$ {

根html;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;

包括 fastcgi_params;

}

或者,您也可以取消注释这些行以取消限制 .htaccess 的使用。

位置 ~ /.ht {

全部否认;

}

您还可以将 index.php 添加到索引中,以允许 index.php 作为默认页面运行。

地点 / {

根 /usr/share/nginx/html;

索引 index.html index.htm index.php;

}{/代码引用}

您还需要编辑 /etc/rc.local 文件以将 PHP 文件传递​​给 CGI,以便 nginx 可以使用它们。 将以下内容全部包含为一行:

{codecitation}spawn-fcgi -a 127.0.0.1 -p 9000 -u nginx -g nginx -f php-cgi -P /var/run/fastcgi-php.pid{/codecitation}

保存 rc.local 文件后,您需要重新启动才能使 rc.local 生效。 然后,您还可以通过在 /usr/share/nginx/html 中创建 PHP 文件来测试设置以查看一切是否正常

{代码引用}

phpinfo();

?>{/ 代码引用}

如果 PHP 信息页面正确显示,那么您的安装应该可以正常工作。 这就是它的全部内容,您现在应该能够将 PHP 和 MySQL 与 Nginx 一起使用。

{模块 user9-footer}