博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
apache与PHP结合,apache默认虚拟机
阅读量:6891 次
发布时间:2019-06-27

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

修改vim /usr/local/apache2.4/conf/httpd.conf

取消ServerName前的#,让本行生效

添加80端口访问规则

iptables -I INPUT -p tcp --dport 80 -j ACCEPT

打开cmd 测试

apache与PHP结合,apache默认虚拟机
apache与PHP结合,apache默认虚拟机
telnet成功,按ctrl +] 退出telnet

打开浏览器 测试

apache与PHP结合,apache默认虚拟机
尝试修改配置文件中的状态为denied
apache与PHP结合,apache默认虚拟机
修改后
测试语法正确与否
[root@aminglinux-001 ~]# /usr/local/apache2.4/bin/apachectl -t
Syntax OK
重新加载配置文件
[root@aminglinux-001 ~]# /usr/local/apache2.4/bin/apachectl graceful

再次通过浏览器访问192.168.67.128 提示

apache与PHP结合,apache默认虚拟机

再次进入修改回来
apache与PHP结合,apache默认虚拟机
/usr/local/apache2.4/bin/apachectl graceful

验证

apache与PHP结合,apache默认虚拟机

再次进入配置文件

添加此行内容,增加php文件
apache与PHP结合,apache默认虚拟机
再添加一个索引页,补充一句
apache与PHP结合,apache默认虚拟机
修改完配置文件,检查语法错误,重新加载
apache与PHP结合,apache默认虚拟机

编辑文件apache文件

vi /usr/local/apache2.4/htdocs/1.php
添加如下语句
<?php
phpinfo();
?>
再浏览器打开地址测试是否生效。
apache与PHP结合,apache默认虚拟机

如果故意在上个配置文件中不加php的解析(DirectoryIndex index.html index.php

)就会出现1.php的内容,不被apache解析成功。

有这么几个不被解析的原因及检查方法

检查apache配置文件:
1、/usr/local/apache2.4/bin/apachectl -M
apache与PHP结合,apache默认虚拟机
有没有加载php5模块
2、如果没有加载php5模块,就要检查是否有PHP5的模块
ls /usr/local/apache2.4/modules/libphp5.so

apache与PHP结合,apache默认虚拟机

3、如果有php5文件,但是没有显示出来,是不是配置文件里是不是没有加载php的配置
apache与PHP结合,apache默认虚拟机
如果没有加载这个模块,就算有模块,也不会被apache解析到。
4、检查配置文件里有没有加载php的
apache与PHP结合,apache默认虚拟机
注意php .php 第一个php后面有个空格
5、最后就看看有没有添加引导页
apache与PHP结合,apache默认虚拟机

httpd的默认虚拟主机

理解为一台服务器可以访问多个网站,一个网站域名对应了一个虚拟主机

windows下编写Hosts

192.168.67.128 www.123.com www.abc.com

打开浏览器也可解析到

虚拟主机配置文件

apache与PHP结合,apache默认虚拟机

[root@aminglinux-001 ~]# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf

下图就代表了两个主机,虚拟主机
apache与PHP结合,apache默认虚拟机
修改
apache与PHP结合,apache默认虚拟机

新增/data/wwwroot/abc.com

/data/wwwroot/111.com
/data/wwwrooot/abc.com/index.php并编辑里面显示abc.com
apache与PHP结合,apache默认虚拟机
/data/wwwroot/111.com/index.php并编辑在里面显示111.com
apache与PHP结合,apache默认虚拟机
以上两个编辑格式都支持。

通过curl 访问abc.com 成功

apache与PHP结合,apache默认虚拟机
只要没有定义hostname,任何域名都会指向到默认虚拟机,就是配置文件的第一个域名abc.com
apache与PHP结合,apache默认虚拟机
此时会发现虚拟配置文件的www.example.com也会解析到111.com这个虚拟主机配置文件中的host中来。

由上可知,只要在主配置文件里打开了虚拟机配置(取消了那个#号),主配置文件里面的默认根目录(DocumentRoot),域名(servername)以及默认引导页就会失效,都是以虚拟配置文件为主了

apache与PHP结合,apache默认虚拟机

2.虚拟主机文件一旦打开,每一个配置文件都是一个虚拟主机,但是其中默认主机比较特殊,无论任何主机域名解析到这个ip上,都会访问该默认主机。

========关机重启后,非要执行/usr/local/apache2.4/bin/apachectl graceful

apache 才能生效,为什么不能开机自启动呢?

转载于:https://blog.51cto.com/13528516/2074491

你可能感兴趣的文章
Grafana3.1.0安装步骤
查看>>
c++获取进程的运行路径
查看>>
oracle 日常操作
查看>>
我的友情链接
查看>>
高级I/O---多路复用---poll
查看>>
计算机集群多任务投递脚本
查看>>
Flume数据采集之常见集群配置案例
查看>>
自定义ANDROID中EDITTEXT中的HINT文本的大小
查看>>
Unity3D下用C#通过WinSCP命令行方式给Linux服务器SCP传文件
查看>>
Fedora遇难记之rpmfusion:获取 GPG 密钥失败
查看>>
Exception
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
VC改变鼠标的WM_SETCURSOR( setcursor() )
查看>>
jQuery添加/改变/移除CSS类及判断是否已经存在CSS
查看>>
Leetcode PHP题解--D82 13. Roman to Integer
查看>>
使用scrapy抓取股票代码
查看>>
hashmap实现原理浅析
查看>>
1.1什么是数据仓库
查看>>
注册个博客好累哦
查看>>