设为首页 收藏本站
查看: 1265|回复: 0

[经验分享] 11.14-11.17 Apache和PHP结合 ,httpd的默认虚拟主机

[复制链接]

尚未签到

发表于 2018-11-17 12:54:23 | 显示全部楼层 |阅读模式
  11.14-11.15 Apache和PHP结合
  
  到目前为止,虽然安装好了apache,mysql,php,但是还没有将他们结合在一起。
  虽然apache利用php调用了一个模块,但是还没有做实验,还不知道他们能不能解析php.
  所以现在得编辑一下Apache,httpd的配置文件。
  httpd主配置文件/usr/local/apache2.4/conf/httpd.conf
DSC0000.jpg

  课程操作,
  # vim /usr/local/apache2.4/conf/httpd.conf 主要修改以下几个地方
  1,开启80端口,把#ServerName www.exaple.com:80的#删除。
  2,搜索Require all denied
  改成Require all granted
  3,找到
  AddType application/x-gzip .gz .tgz
  在该行下面添加一行:
  AddType application/x-httpd-php .php
  4,找到DirectoryIndex
  修改为:
  DirectoryIndex index.html index.php
  启动Apache的时候,会有以下报错信息提示,要使它不出现,
  [root@centos7-01 ~]# /usr/local/apache2.4/bin/apachectl start

  AH00558: httpd: Could not>  操作,
  #vim /usr/local/apache2.4/conf/httpd.conf
  搜索ServerName,把#ServerName www.exaple.com:80的#删除。
  #/usr/local/apache2.4/bin/apachectl start
  #vim /usr/local/apache2.4/conf/httpd.conf
  搜索Require all denied
  改成Require all granted
  以为不修改参数 会登录失败的。
  遇到这种报错,
DSC0001.jpg

  1 先ping IP连通性
  2 测试端口是否连同
  ip通,端口不通,这是因为没有开启80端口
  加载80端口
  [root@Centos7-01 php-5.6.30]#iptables -I INPUT -p tcp --dport 80 -j ACCEPT
  添加规则让防火墙开通80端口的访问
  #vim /usr/local/apache2.4/conf/httpd.conf
  找到
  AddType application/x-gzip .gz .tgz
  在该行下面添加一行:
  AddType application/x-httpd-php .php
  如果不添加这行,php没办法解析
  找到DirectoryIndex
  修改为:
  DirectoryIndex index.html index.php
  每次修改完httpd配置文件后
  利用/usr/local/apache2.4/bin/apachectl graceful    重新加载修改服务
  /usr/local/apache2.4/bin/apachectl -t //测试语法,检查配置是否有错误
  /usr/local/apache2.4/bin/apachectl start //启动服务
  #vim /usr/local/apache2.4/htodcs/1.php //增加如下内容,以下内容可以把php的相关信息打印出来
  
  打开浏览器登录192.168.189.128/1.php
  发生错误
DSC0002.jpg

  检查
  1,检查 php5_module (shared)模块是否存在并shared状态
  # /usr/local/apache2.4/bin/apachectl -M
  2,/usr/local/apache2.4/modules/libphp5.so 是否存在
  3,检查配置文件httpd有没有加载libphp5.so文件
  LoadModule php5_module        modules/libphp5.so
  4,检查httpd有没有加载这一行信息
  AddType application/x-httpd-php .php
  5,检查httpd有没有添加 index.php
  6,检查参数符号有没有错,不要把中文的符号打上去,一定要英文符号。
  7,关闭防火墙。
  成功
DSC0003.jpg

  11.16-11.17 httpd的默认虚拟主机。
  
  1.php index.php 之所以在windows端被访问,
  是因为/usr/local/apache2.4/conf/httpd.conf里的其中一项参数定义了网页路径为/usr/local/apache2.4/htdocs,而1.php index.php 又在里面。
  #vim /usr/local/apache2.4/conf/httpd.conf
  DocumentRoot "/usr/local/apache2.4/htdocs"
  
  准备工作,
  # vim /usr/local/apache2.4/conf/httpd.conf
  搜索
  Virtual hosts,把#Include conf/extra/httpd-vhosts.conf的#去掉,修改如下
DSC0004.jpg

  编辑虚拟主机的配置文件
  #vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
DSC0005.jpg

  上述配置是,
  格式***是一个虚拟主机了
  每一个虚拟主机,代表着一个网站。
  **内容可以是,
  DocumentRoot 后面网页的路径,核心参数。
  ServerName 网页的地址,只可以输入一个
  ServerAlias 网页的别名,支持输入多个,
  接下来,创建网站,
  具体操作,创建目录,使其配置生效。
  创建三个网站的父目录,
  [root@centos7-01 conf]# mkdir /data/wwwroot/
  [root@centos7-01 conf]# mkdir /data/wwwroot/abc.com
  [root@centos7-01 conf]# mkdir /data/wwwroot/111.com
  在对应站点目录创建站点文件index.php
  [root@centos7-01 conf]# vim /data/wwwroot/abc.com/index.php
DSC0006.jpg

  [root@centos7-01 conf]# vim /data/wwwroot/111.com/index.php
DSC0007.jpg

  编辑php脚本,最后最好不要留空白行,不会导致结果有所区别。
  脚本最后留了空白行输出结果会是,
   DSC0008.jpg
  而无留空白行,正确输出是,
   DSC0009.jpg
  [root@centos7-01 conf]# /usr/local/apache2.4/bin/apachectl graceful
  [root@centos7-01 conf]# /usr/local/apache2.4/bin/apachectl -t
  Syntax OK
  要想在本机访问abc.com和111.com
  可以编辑/etc/hosts文件,或者使用curl -x (指定主机ip和端口)
  [root@centos7-01 conf]# curl -x192.168.189.128:80 abc.com
  abc.com[root@centos7-01 conf]#
  前缀abc.com表示已经成功指向默认虚拟主机。
  abc.com[root@centos7-01 conf]# curl -x192.168.189.128:80 www.abcd.com
  abc.com[root@centos7-01 conf]#
  abc.com[root@centos7-01 conf]# curl -x192.168.189.128:80 www.111.com
  因为www.abcd.com没有被标记在虚拟主机里面,所以它会被指向默认虚拟主机abc.com里面。
  abc.com[root@centos7-01 conf]# curl -x192.168.189.128:80 www.111.com
  111.com[root@centos7-01 conf]#
  因为111.com是第二个虚拟主机,已经被标住了,所以会在192.168.189.128:80指向它会进入111.com
  要想宿主机(真实机windows)上登录网页,需要修改windows的hosts文件。
  C:\Windows\System32\drivers\etc
DSC00010.jpg

  打开浏览器,尝试连接。
DSC00011.jpg



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-636244-1-1.html 上篇帖子: 四十、Apache和PHP结合、Apache默认虚拟主机 下篇帖子: LAMP环境搭配之配置apache虚拟主机
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表