博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
十周第二次课(5月28日)
阅读量:6844 次
发布时间:2019-06-26

本文共 3626 字,大约阅读时间需要 12 分钟。

11.14/11.15 Apache和PHP结合

1 配置httpd支持php

httpd主配文件:

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

2 vim /usr/local/apache2/conf/httpd/conf

root@localhost ~]# vim /usr/local/apache2.4/conf/httpd.conf

//修改以下4个地方 ServerName 开启 Require all denied

[root@localhost ~]# vim /usr/local/apache2.4/conf/httpd.conf AddType application/x-httpd-php.php

在此添加“AddType application/x-httpd-php .php”,意思是允许PHP服务解析该服务器。

Directorylndex index.html index.php 增加索引页

3 /usr/local/apache2.4/bin/apachectl -t //测试语法

[root@localhost ~]# /usr/local/apache2.4/bin/apachectl -tSyntax OK

4 /usr/local/apache2.4/bin/apachectl start //启动服务

[root@localhost ~]# /usr/local/apache2.4/bin/apachectl graceful

//注:该命令只是加载配置文件的内容

5 netstat -lntp //查看是否有监听端口

[root@localhost ~]# iptables -I INPUT -p tcp --dport 80 -j ACCEPT

//防火墙添加允许规则

6 curl localhost //模拟访问

7 vim /usr/local/apache2.4/htodcs/1.php //增加如下内容

[root@localhost ~]# vim /usr/local/apache2.4/htodcs/1.php
[root@localhost ~]# vim /usr/local/apache2.4/htdocs/phpinfo.php

#可以解析PHP代码,如果不支持,访问该文件时会显示源代码。

如果服务器无法解析PHP代码: 解决方法: 1. 检查Apache是否加载PHP模块 2. 检查系统中有没有PHP模块 3. 检查Apache配置文件中是否有错误或者没有加载PHP的配置

[root@localhost ~]# vim /usr/local/apache2.4/htdocs/1.php

#phpinfo() 在访问该地址时,直接打印PHP的相关信息

8 curl localhost/test.php

[root@localhost ~]# curl localhost/1.php123

11.16/11.17 Apache默认虚拟主机

  • 一台服务器可以访问多个网站,每个网站都是一个虚拟机主机
    • 概念:域名(主机名)、DNS、解析域名、hosts
    • 任何一个域名解析到这台机器,都可以访问的虚拟主机就是默认虚拟主机
    • 打开vhost配置,httpd的servername,document失效
      vim /usr/local/apache2/conf/httpd.conf //搜索httpd-vhost,去掉# 配置Apache配置文件,取消注释掉的虚拟主机参数
[root@localhost ~]# vim /usr/local/apache2/conf/conf/httpd.conf# Virtual hostsInclude conf/extra/httpd-vhosts.conf# Local access to the Apache HTTP Server Manual#Include conf/extra/httpd-manual.conf# Distributed authoring and versioning (WebDAV)#Include conf/extra/httpd-dav.conf:wq

1 编辑虚拟主机配置文件

vim /usr/local/apache2/conf/extra/httpd-vhosts.conf //改为如下

ServerAdmin webmaster@abc.com DocumentRoot "/home/wwwroot/abc.com" ServerName abc.com ServerAlias www.abc.com www.123.com ErrorLog "logs/abc.com-error_log" customLog "logs/abc.com-access_log" common
ServerAdmin webmaster@111.com DocumentRoot "/home/wwwroot/111.com" ServerName 111.com ServerAlias www.123.cn ErrorLog "logs/111.com-error_log" CustomLog "logs/111.com-access_log" common
  • 此时即定义了一个网站,定义网站的核心参数即为
  • DocumentRoot(网站根目录)
  • ServerName(域名)
  • 注意: 虚拟主机生效后,原Apache配置文件中的默认主机(www.example.com ~ 192.168.0.173)就会失效(在此用www.example.com ~ 111.com进行验证)
  • 如果在windows系统下测试,需要配置hosts,用文档编辑器编辑,推荐notepad++
    hosts路径:C:\Windows\System32\drivers\etc\hosts
  • 如果是linux,需要编辑hosts,vim /etc/hosts

2 修改目录权限

AllowOverride none Require all denied#如果不想对上面做设置,那就需要在下面对虚拟机的文件目录做设置,不然403
AllowOverride none Require all granted

3 测试

[root@localhost home]# curl -x127.0.0.1:80 abc.comabc.com[root@localhost home]# curl -x127.0.0.1:80 111.com111.com[root@localhost home]# curl -x127.0.0.1:80 www.abcd.comabc.com[root@localhost home]# curl -x127.0.0.1:80 123.comabc.com[root@localhost home]# curl -x127.0.0.1:80 111.com111.com[root@localhost home]# curl -x127.0.0.1:80 localhostabc.com[root@localhost home]# curl -x127.0.0.1:80 www.12.cnabc.com[root@localhost home]# curl -x127.0.0.1:80 www.123.cn111.com[root@localhost home]# curl -x127.0.0.1:80 www.111.comabc.com[root@localhost home]# curl -x127.0.0.1:80 www.123.cn111.com[root@localhost home]#
  • 你输入任何一个域名都指向到192.168.0.173它都会访问到htdocs下面
  • 你访问什么域名 ,只要揭晓到这个ip,都会访问到abc.com 默认的虚拟主机就是abc.com
  • 主机配置文件打开,里面可以定义多个host,每一个virtural host 都docunmentroot ,以及servername ,每一个host 代表一个站点,代表一个虚拟主机
  • 虚拟主机,无论任何域名解析到这个ip 上,都会去访问默认虚拟主机,

转载于:https://blog.51cto.com/235571/2117239

你可能感兴趣的文章
《初级会计电算化应用教程(金蝶KIS专业版)》——1.3 电算化会计信息系统
查看>>
Android 开发者应该使用 FlatBuffers 替代 JSON ?
查看>>
《拥抱变化——社交网络时代的企业转型之道》一找准组织目标和企业文化
查看>>
《Arduino奇妙之旅:智能车趣味制作天龙八步》一3.2 构建小发明
查看>>
《Cisco安全防火墙服务模块(FWSM)解决方案》——第2章防火墙服务模块概述
查看>>
Go语言项目(kingshard)性能优化实例剖析
查看>>
安全预警:ImageMagick 图象处理软件存在远程代码执行(CVE-2016-3714)
查看>>
《ANSYS Workbench 14有限元分析自学手册》——2.5 体操作
查看>>
《交互式程序设计 第2版》一第1章 交互设计导论
查看>>
ARM拟将ARM核心置入未来的Fusion APU中
查看>>
3分钟参与阿里云《金融行业云上信任报告》调查问卷,98%的几率拿到代金券
查看>>
《C语言编程魔法书:基于C11标准》——2.9 本章小结
查看>>
《移动数据挖掘》—— 1.4 本书简介
查看>>
菲尔兹奖得主维拉尼:七个点子帮你找到科研灵感
查看>>
《C语言程序设计与实践(第2版)》——导读
查看>>
《计算机科学概论(第12版)》—第1章1.4节用位模式表示信息
查看>>
C2B前还有S2b,阿里携手产学研探索新零售时代的供应链未来
查看>>
Linux集群和自动化维2.4.2 sed的用法示例
查看>>
《OpenGL ES 3.x游戏开发(上卷)》一1.2 搭建Android开发环境
查看>>
《HTML5实战》——2.6 小结
查看>>