本文共 2287 字,大约阅读时间需要 7 分钟。
修改 apache 配置文件
#vi /usr/local/apache2/conf/httpd.conf找到:<Directory />Options FollowSymLinksAllowOverride NoneOrder deny,allowDeny from all</Directory>改为:<Directory />Options FollowSymLinksAllowOverride NoneOrder deny,allowAllow from all</Directory>说明:如果不修改这个地方,我们访问网站会禁止访问,显示 403。然后找到:AddType application/x-gzip .gz .tgz在该行下面添加:AddType application/x-httpd-php .php说明,要想支持 php 脚本解析,必须要加上对应的类型。再找到:<IfModule dir_module>DirectoryIndex index.html</IfModule>将该行改为:<IfModule dir_module>DirectoryIndex index.html index.htm index.php</IfModule>说明: 增加针对 php 的索引,如果一个站点默认页为 index.php,那么就得加上这个index.php 的支持。再找到:#ServerName www.example.com:80修改为:ServerName localhost:80如果不去掉#,则启动 apache 时,会有警告信息“httpd: Could not reliably determine theserver's fully qualified domain name, using localhost.localdomain for ServerName”,看起来像是错误,其实没有影响。查看配置文件是否有问题:/usr/local/apache2/bin/apachectl -t如果显示 Syntax OK,说明配置没问题了。然后启动服务:/usr/local/apache2/bin/apachectl start检查 apache 是否正常启动的命令是:ps aux |grep httpd看有没有进程列表。vi /usr/local/apache2/htdocs/1.php
写入:<?phpecho "php works.";?>保存后,继续测试:curl localhost/1.phpphp works. 只有显示这个信息,才算正常解析。否则就是没有成功解析。当然,你也可以用真机上的浏览器通过 ip 访问,比如你的虚拟机 ip 为 192.168.1.101,那么在浏览器输入 看是否只显示一行 php works. 如果你的访问不太顺畅,请检测iptables 规则。iptables -nvL如果有一些规则,请执行iptables -Fservice iptables savevim /usr/local/apache2/conf/extra/httpd-vhosts.conf
把下面的配置: <VirtualHost :80> ServerAdmin webmaster@dummy-host.example.com DocumentRoot "/usr/local/apache2/docs/dummy-host.example.com" ServerName dummy-host.example.com ServerAlias www.dummy-host.example.com ErrorLog "logs/dummy-host.example.com-error_log" CustomLog "logs/dummy-host.example.com-access_log" common </VirtualHost> 修改为: <VirtualHost :80> DocumentRoot "/tmp/tmp" ServerName tmp.com <Directory /tmp/tmp/> Order allow,deny Deny from all </Directory> 创建配置中提到的目录 #mkdir /tmp/tmp chmod 600 /tmp/tmp/usr/local/apache2/bin/apachectl graceful #重新加载其实这个默认虚拟主机就是配置文件里的第一个虚拟主机。关于默认虚拟主机有个特点,凡是解析到这台机器的域名,不管是什么域名,只要在配置文件中没有配置,那么都会访问到这个主机上来。 举例,我们直接用ip 访问,会访问到这个站点上来。为了避免别人乱解析,所以应该把默认也就是第一个虚拟主机给禁止掉。在这里我们使用allow,deny语句,已经禁掉了,至于它的含义,后面会介绍。这时候,我们用 ip去访问,发现已经提示: Forbidden You don't have permission to access / on this server.转载于:https://blog.51cto.com/10941098/2153348