yuanqiao 发表于 2018-11-19 10:47:06

LAMP之四 PHP & APache 之间的配置

  用windows 主机通过 IP 地址访问已经安装了Apache 的主机,网页会反馈
  

  It works!

  

  # vim /usr/local/apache2/conf/httpd.conf 查看Apache 配置文件
  

  DocumentRoot "/usr/local/apache2/htdocs"这里保存网页访问的目录。“It works!”
  

  # vim 1.txt
  在txt文本里写上一些内容,通过 http://192.168.31.170/1.txt(后面补充的实验截图,虚机IP不一样) 访问,就可以看到里面的内容。

  

  LAMP 是支持PHP ,那么我们可以写一简单的php 的文件。
  # vim 2.php这是一个简单的php 脚本。
  # cat 2.php
  
  

  

  通过网页访问 ,显示的结果并没有真正的解析出来
  http://192.168.31.170/2.php
  以下是显示的结果:
  此时说明Apache 此时还不支持解析 PHP.需要去编辑配置文件。

  如果是正真的解析应该是这样
  # /usr/local/php/bin/php 2.php
  1212121212#                     只显示一行“1212121212”
  

  

编译配置文件
vim /usr/local/apache2/conf/httpd.conf找到:
AddType application/x-gzip .gz .tgz在该行下面添加:





找到

    DirectoryIndex index.html

改为下面

    DirectoryIndex index.html index.php

配置文件更改完以后检测一下配置文件有没有问题
# /usr/local/apache2/bin/apachectl -t
Syntax OK  然后重新加载 Apache
  # /usr/local/apache2/bin/apachectl graceful
  

  此时再通过网页访问 http://192.168.31.170/2.php
  可以看到2.php 的正确输出。

  我们可以再多做一些测试,编辑一个info.php,这是php 的一个函数。
  # vim info.php
  # cat info.php
  
  通过网页访问可以看一个页面,其实就是PHP 的信息。
  http://192.168.31.170/info.php



  # /usr/local/php/bin/php -i |less也可以达到上面的效果
  可以查看到是怎么编译 PHP 。
  PHP 可以做到,Apache 也同样可以
  # cat /usr/local/apache2/build/config.nice
  #! /bin/sh
  #
  # Created by configure
  

  "./configure" \
  "--prefix=/usr/local/apache2" \
  "--with-included-apr" \
  "--enable-so" \
  "--enable-deflate=shared" \
  "--enable-expires=shared" \
  "--enable-rewrite=shared" \
  "--with-pcre" \
  "$@"
  同样的mysql 也可查看它的编译参数

  # cat /usr/local/mysql/bin/mysqlbug|grep -i config
  # This is set by configure
  CONFIGURE_LINE="./configure'--prefix=/usr/local/mysql' '--localstatedir=/usr/local/mysql/data' '--libexecdir=/usr/local/mysql/bin' '--with-comment=MySQL Community Server (GPL)' '--with-server-suffix=' '--enable-thread-safe-client' '--enable-local-infile' '--with-pic' '--with-fast-mutexes' '--with-client-ldflags=-static' '--with-mysqld-ldflags=-static' '--with-zlib-dir=bundled' '--with-big-tables' '--with-ssl' '--with-readline' '--with-embedded-server' '--with-partition' '--with-innodb' '--without-ndbcluster' '--with-archive-storage-engine' '--with-blackhole-storage-engine' '--with-csv-storage-engine' '--without-example-storage-engine' '--with-federated-storage-engine' '--with-extra-charsets=complex' 'CC=/usr/local/gcc-4.3.2/bin/gcc -static-libgcc' 'CFLAGS=-g -O3' 'CXX=/usr/local/gcc-4.3.2/bin/gcc -static-libgcc' 'CXXFLAGS=-g -O3'"
  `test -n "$CONFIGURE_LINE"&& echo "Configure command: $CONFIGURE_LINE"`
  #
  

  PHP 的目录下没有配置文件
  # ls /usr/local/php/etc
  pear.conf
  

  可以去拷贝一个样例过来
  # cp /usr/local/src/php-7.0.8/php.ini-production /usr/local/php/etc/php.ini
  # /usr/local/apache2/bin/apachectl graceful重新加载PHP,再重新刷新网页
  可以看到 php 加载文件的路径Loaded Configuration File
  

Configuration File (php.ini) Path/usr/local/php/etcLoaded Configuration File/usr/local/php/etc/php.ini   

  也可以用命令查看源码
  # curl 192.168.31.170/info.php输出看到的就是网页版的源码。
  




页: [1]
查看完整版本: LAMP之四 PHP & APache 之间的配置