index.php是什么程序,浏览器打开index.php发生了发什么?

记得毕业那年,面试官问我,用户打开浏览器发生了什么,当时回答的糊里糊涂,然后糊里糊涂地被录用了。

今天,我和大家分享这道面试题的。

无图无真相,上图:

2e9aa751606f9ef7779d2be3fa348eff.png

下面是php以cgi运行图:

php以fast-cgi运行:

2a55085bd8676003116c59ee26411a20.png

从php-cgi和php-fpm对比可以看到,fastcgicgi和cgi模型相比,省去了部分的过程,从而速度更快,更节省内存。

早些的时候,web服务器将收到的请求交给php接口,这个借口叫做php-cgi。

cgi 是一种标准,perl、php、python等多种语言都使用cgi标准,这个标准的工作方式使得这些语言可以被其他的软件调用,但是cgi方式慢,因此有了fastcgi标准的调用接口,比如php的php-fpm实现。

php的cgi可执行文件是php/bin/php-cgi,php-fpm实现是php/sbin/php-fpm文件。

但是,不论是php-cgi还是php-fpm,最终都是要将php代码交给php解析器的,只是php-fpm使用fastcgi标准,php-cgi使用cgi标准,更为先进一些而已。

1、查看PHP -fpm

root 3011 0.0 0.4 196692 4720 ? Ss Jul11 0:00 php-fpm: master process (/phpstudy/server/php/etc/php-fpm.conf)

www 3013 0.0 0.7 199284 7720 ? S Jul11 0:00 php-fpm: pool www

www 3014 0.0 0.7 199284 7744 ? S Jul11 0:00 php-fpm: pool www

从上面我们可以清晰地看到一个php-fpm 主进程,多个php-fpm子进程。

2、查看Nginx

root 3015 0.0 0.1 47536 1196 ? Ss Jul11 0:00 nginx: master process /phpstudy/server/nginx/sbin/nginx

www 3017 0.0 0.1 50044 1968 ? S Jul11 0:00 nginx: worker process

www 3018 0.0 0.1 50044 1968 ? S Jul11 0:00 nginx: worker process

www 3019 0.0 0.1 50044 1968 ? S Jul11 0:00 nginx: worker process

www 3020 0.0 0.1 50044 1968 ? S Jul11 0:00 nginx: worker process

nginx的做法也是这样,一个master进程,多个work进程。

参考文献:

搞不清FastCgi与PHP-fpm之间是个什么样的关系

Nginx中FastCGI配置优化

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 您可以通过修改网站的配置文件来实现将首页index.php更改为www.php。具体来说,您需要在配置文件中找到类似于“DirectoryIndex index.php”的行,并将其更改为“DirectoryIndex www.php”。这将告诉服务器在访问网站时默认加载www.php作为首页。 ### 回答2: 要将PHP框架中的首页文件从index.php更改为www.php,可以按照以下步骤进行: 1. 打开框架的根目录,通常是项目的文件夹。 2. 找到名为.htaccess的文件,如果不存在,则创建一个新的.htaccess文件。 3. 在.htaccess文件中,添加以下代码来进行URL重写: ``` RewriteEngine On RewriteRule ^www.php$ index.php [L] ``` 这段代码使用了Apache的URL重写规则,将www.php重写为index.php。这意味着当用户访问www.php时,实际上是执行了index.php文件的内容。 4. 保存.htaccess文件,并上传到服务器上的框架根目录中。 现在,当用户访问www.php时,框架将调用index.php文件的内容,并在浏览器中显示相应的结果。请注意,此方法假设您正在使用Apache服务器,并且已启用了URL重写功能。 如果您使用其他Web服务器或框架,则可能需要采用不同的方法来实现这个目标。请参考相应的文档或搜索相关资源来了解如何在您的环境中更改首页文件名。 ### 回答3: 要把PHP框架的首页index.php换成www.php,首先需要知道使用的是哪个具体的框架。不同的PHP框架可能有不同的配置方法,下面以较为常见的框架Laravel为例来说明。 在Laravel框架中,可以通过配置路由来实现首页的更改。打开项目根目录下的`routes`文件夹,找到`web.php`文件。在该文件中可以看到默认的路由定义,其中包含了首页的路由: ``` Route::get('/', function () { return view('index'); }); ``` 上述代码表示访问根目录时(即首页),会调用`index`视图文件。要实现将首页改为www.php,只需要修改该路由定义中的URL路径即可。例如修改为: ``` Route::get('/www.php', function () { return view('index'); }); ``` 保存并刷新浏览器后,首页的URL就变为了www.php。 需要注意的是,修改首页路由后,可能需要相应地修改其他相关代码中对首页URL的引用,以确保整个应用的功能正常运行。 总结起来,把PHP框架的首页index.php换成www.php的主要步骤是找到对应的路由配置文件,修改其中的首页路由定义并保存,再相应地修改其他相关代码中对首页URL的引用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值