Nginx 安装====
大致分为三种方法,本次只讲述第一种(第二种再后边配置php的时候很麻烦,路径的修改方面)
推而广之linux安装应该也可分为三种方法(后边说一下大致特点)
1通过yum安装 输入命令自动安装,无脑快捷,自动搭建环境,跟windows下的软件自动安装类似,路径默认。查找方便
2通过源码安装 个性化定制,下了之后要解压,然后用命令编译,(有点像c语言)这意味着得先找个文件夹放源码包,还要安装依赖包,因为源码编译需要在依赖包环境中。 联想到java的环境变量…. ,安好后还得配置,心累==
3通过rpm安装 安装的模块不是来自官方镜像,而是本地资源,可能要提前下载,没尝试过。
yum安装方法:
在终端输入命令: yum install nginx
接下来你会看到窗口不断滚动,下载各种东西==
有个安装选项 输入y 回车
PS 最后在root权限下安装
正如windows默认安装在C盘一样,linux 默认安装在 /usr/sbin/nginx
安装的时候自动配置了系统变量,安好后就可直接运行。
启动nginx
systemctl start nginx
重启nginx
systemctl restart nginx
停止nginx
systemctl stop nginx
查询nginx进程
ps aux|grep nginx
开机自启动
systemctl enable nginx
PHP 安装
yum install php php-fpm
启动php-fpm
systemctl start php-fpm
查看php进程
ps -ef | grep php
查看php版本
php -v
通过命令行输出phpinfo
php -r “phpinfo();”
配置nginx,php通过nginx输出phpinfo
命令行输入 vim /etc/nginx/conf.d/default.conf
去除每条语句前的# 并修改fastcgi_param 以及移动root html位置
修改后
代码
root html;
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
Root html也可不移动,移动目的是为了使根文件为应用到整个文件中…
修改好后输入 :wp 保存退出
PS : :q!不保存退出
:w保存
在网站根目录新建一个index.php 文件(文件名后缀只要为php应该都可以….)
地址
usr/share/nginx/html/
命令
vi /usr/share/nginx/html/index.php
文件内容
<?php phpinfo(); ?>保存好后打开浏览器输入
localhost/index
即可得到phpinfo输出结果
这是用yum安装的好处,不用环境搭建,只需要在nginx配置中添加php服务端口即可,以下引用百度中对原理的叙述。
Nginx+FastCGI运行原理
Nginx不支持对外部程序的直接调用或者解析,所有的外部程序(包括PHP)必须通过FastCGI接口来调用。FastCGI接口在Linux下是socket,(这个socket可以是文件socket,也可以是ip socket)。为了调用CGI程序,还需要一个FastCGI的wrapper(wrapper可以理解为用于启动另一个程序的程序),这个wrapper绑定在某个固定socket上,如端口或者文件socket。当Nginx将CGI请求发送给这个socket的时候,通过FastCGI接口,wrapper接纳到请求,然后派生出一个新的线程,这个线程调用解释器或者外部程序处理脚本并读取返回数据;接着,wrapper再将返回的数据通过FastCGI接口,沿着固定的socket传递给Nginx;最后,Nginx将返回的数据发送给客户端,这就是Nginx+FastCGI的整个运作过程。详细的过程,如下图所示: