结合php配置apache
admin
2023-06-29 14:23:21
0

★apache的配置文件

 ◆/usr/local/apache2/conf/httpd.conf

 ◆/usr/local/apache2/bin/apachectl -l  可以列出所有的static模块,即httpd的内核模块

[root@yue ~]# /usr/local/apache2/bin/apachectl -l
Compiled in modules:
  core.c
  mod_so.c
  http_core.c
  event.c         2.0和2.2默认为prefork模式,使用子进程(worker ;2.4默认为event模式) 

  • 更改模式:

  cd /usr/local/src/httpd-2.2.16

  [root@yue httpd-2.2.16]# ./configure --help |grep mpm
  --with-mpm=MPM          Choose the process model for Apache to use.
                          MPM={beos|event|worker|prefork|mpmt_os2}

  在编译时指明模式即可

  ◆/usr/local/apache2/bin/apachectl -M  可以列出shared类型的模块

  ◆/usr/local/apache2/bin/apachectl -t  可以查看语法有没有错误

    有错改错,没有错误再重启

  ◆/usr/local/apache2/bin/apachectl -graceful 可以重新加载配置文件

  ◆cat /usr/local/apache2/build/config.nice   可以查看编译apache时候的选项

★结合php配置apache

  vim /usr/local/apache2/conf/httpd.conf

  ◆找到:AddType application/x-gzip .gz .tgz
    在该行下面添加:AddType application/x-httpd-php .php

  ◆找到:
         DirectoryIndex index.html
        

  修改为:
         DirectoryIndex index.html index.htm index.php
        

  ◆找到:#ServerName www.example.com:80 
   修改为:ServerName localhost:80

★测试解析php

  ◆编写一个php脚本,命名为1.php

[root@yue httpd-2.2.16]# vim /usr/local/apache2/htdocs/1.php

[root@yue httpd-2.2.16]# cat /usr/local/apache2/htdocs/1.php
echo baidu.com;
?>

在本地浏览器输入ip地址/1.php

发现虽然php正常解析,但是显示内容为baiducom,脚本中写的.并没有显示。这是因为.在php脚本中是一个连接符,如果想让其真正显示成.需要加上单引号(echo 'baidu.com')

  ◆phpinfo()可以显示php相关的配置

结合php配置apache

我们可以看到Loaded Configuration File 显示为(none),这是因为在/usr/local/php/etc下并没有相关配置文件

[root@yue httpd-2.2.16]# ls /usr/local/php/etc
pear.conf

我们可以复制一个,在源码包文件下我们可以过滤一下

[root@yue php-5.3.28]# ls |grep php.ini
php.ini-development  <== 测试环境的
php.ini-production   <== 生产环境的

[root@yue php-5.3.28]# cp php.ini-production /usr/local/php/etc/php.ini

我们需要重启一下apache,[root@yue php-5.3.28]# /etc/init.d/apachectl restart

刷新网页我们发现已经改变了

结合php配置apache

  ◆在命令行下进行测试

  • [root@yue php-5.3.28]# cd /usr/local/php        <== 进入到此目录下

  • [root@yue php]# /usr/local/php/bin/php -m  可以列出所有加载的模块,都是静态编译进来的

  • [root@yue php]# /usr/local/php/bin/php -i  可以查看到phpinfo

要想查看配置文件,可以 /usr/local/php/bin/php -i |grep -i 'Configuration File'

  • [root@yue php]# /usr/local/php/bin/php -i |grep -i 'Configuration File'
    Configuration File (php.ini) Path => /usr/local/php/etc
    Loaded Configuration File => /usr/local/php/etc/php.ini

  • [root@yue php]# /usr/local/php/bin/php -v  可以查看版本

  • [root@yue php]# /usr/local/php/bin/php -i |head   可以查看到php的编译选项

  • root@yue php]# curl -x192.168.16.100:80 yueyue.com/index.html

    It works!

    如果现实php源码,说明php没有正常解析,需要再去检查配置文件

 ◆无法正常解析时排错方法

  • /usr/local/php/bin/php -m
    查看有没有php5_module模块,如果没有进行第二步

  • 查看ls /usr/local/apache2/modules/libphp5.so 此目录下有没有此文件

    如果有此文件但没有第一步中的模块,ldd /usr/local/apache2/modules/libphp5.so

    查看是否有问题(是否出现****==> not found),此命令用来查询依赖哪些库文件


相关内容

热门资讯

初一男生校门口遭群殴或失聪,教... 哥哥同学辱骂母亲,辽宁鞍山13岁少年在学校门口维护哥哥与人发生争执,随后数名同龄少年一拥而上对其实施...
演唱会大量邀请票被当众焚毁,警... 极目新闻记者 杜光然5月29日,网友发帖称,有人当众焚烧大量演唱会邀请票,视频定位于温岭市体育中心。...
多所高校撤销外语学院 人工智能的发展及其他因素的影响下,外语类专业面临挑战,近年来一些高校对外语学院进行调整、重组。近日,...
解放军少将质问日方:有没有资格... 【环球时报-环球网报道 记者 郭媛丹 苏雅瑄】 “殷鉴不远,今天的世界又处在新的十字路口,我们必须警...
《给阿嬷的情书》导演被网友二创... 《给阿嬷的情书》这段解读直接破防!网友二创还原木生守桥的画面,把邮差落水,弄丢写有真相的讣告信件,解...
伊朗最高领袖顾问批特朗普背弃外... 据凤凰卫视报道,美伊谈判前景不明,伊朗最高领袖顾问雷扎伊5月30日指责美国总统特朗普第三次背弃外交原...
免去南开大学陈某院长、中山大学... 刚刚,南开大学和中山大学发布情况通报。南开大学:免去陈某院长职务南开大学通报中指出,论文第一作者郑某...
绿色算力全栈AI平台在呼和浩特...   新华社呼和浩特5月30日电(记者侯维轶)30日,绿色算力全栈AI平台——内蒙古词元交易平台在内蒙...
北京太空智算研究院在北京亦庄成... 红星资本局5月30日消息,近日,北京太空智算研究院在北京经济技术开发区(简称“北京经开区”,又称“北...
第二届西部医学科技创新学术大会... 封面新闻记者 邱添 2026年5月30日,在第十个全国科技工作者日来临之际,一场汇聚医学前沿智慧与创...