我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

在前面文章的学习中,大家已经知晓nginx关于phar的设置项目了。在本文中,我们来看看,apache是如何处理phar文件的。是否能够保证phar的源码安全呢?是非分明,且听本回分解。

苏南大叔:apache的handler模式下,如何安全设置phar文件? - apache-handler-phar
apache的handler模式下,如何安全设置phar文件?(图8-1)

前言

php的服务器市场上,搭配的多数是nginx,少数是apache。当然,iis及其它服务器环境也是存在的,但是过于稀少,就不在考虑范围内了。而apache搭配php的方式又有两种,一种是作为handler模式,一种是proxyfpmfastcgi模式。具体的可以点击这里查看:

具体点说的话,本文的环境前提是:nginx + handler2模式对接php,即php作为apache的一个模块存在。

苏南大叔:apache的handler模式下,如何安全设置phar文件? - apache_000
apache的handler模式下,如何安全设置phar文件?(图8-2)

默认情况下,phar文件在apache中的展示效果,貌似比nginx上还要惨一点,直接显示所有源码了。

苏南大叔:apache的handler模式下,如何安全设置phar文件? - 001
apache的handler模式下,如何安全设置phar文件?(图8-3)

编辑conf配置

配置文件的位置,也是看具体情况不同而不同。mac系统里面,默认的位置为:/etc/apache2/

这里如果想要测试效果,您可能需要配置vhost。所以,这里的关联文章是:https://newsn.net/say/apache-vhost.html 。但是,对于本文来说,您需要的是如下几项:

httpd.conf,开启php支持。

LoadModule php7_module libexec/apache2/libphp7.so
Include /private/etc/apache2/other/*.conf

other/php7.conf,php配置,识别phar类型。

AddType application/x-httpd-php .phar

苏南大叔:apache的handler模式下,如何安全设置phar文件? - httpd_001
apache的handler模式下,如何安全设置phar文件?(图8-4)

苏南大叔:apache的handler模式下,如何安全设置phar文件? - httpd_002
apache的handler模式下,如何安全设置phar文件?(图8-5)

苏南大叔:apache的handler模式下,如何安全设置phar文件? - phar_php7conf
apache的handler模式下,如何安全设置phar文件?(图8-6)

测试配置重启

sudo apachectl -t
sudo apachectl restart

重启apache后,就可以看到和nginx一致的webphar效果了。

苏南大叔:apache的handler模式下,如何安全设置phar文件? - apache_test
apache的handler模式下,如何安全设置phar文件?(图8-7)

苏南大叔:apache的handler模式下,如何安全设置phar文件? - nginx_test
apache的handler模式下,如何安全设置phar文件?(图8-8)

结论

phar文件,似乎被apache或者nginx们遗忘在了历史的角落。真心有点英雄末路的感觉。所以,我们需要时刻提醒一下nginx和apache们,phar文件的存在。

想查看更多有关phar的经验文章嘛?马上点击这里查看,苏南大叔恭候您的点击。https://newsn.net/tag/phar/

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   php    apache