PHP中级篇 Apache配置httpd-vhosts虚拟主机总结及注意事项[OK]

摘要:
经常使用Apache虚拟主机进行开发和测试,但每次需要配置虚拟主机时都习惯性的ctrl+c和ctrl+v,这次由于重装系统,需要配置一个新的PHP开发环境虚拟主机,于是总结一下Apaceh配置httpd-vhosts虚拟主机使用方法和步骤,便于查找和使用。这时候重启wamp环境,无法打开localhost,需要在httpd-vhosts.conf配置一下。

经常使用Apache虚拟主机进行开发和测试,但每次需要配置虚拟主机时都习惯性的ctrl+c和ctrl+v,这次由于重装系统,需要配置一个新的PHP开发环境虚拟主机,于是总结一下Apaceh配置httpd-vhosts虚拟主机使用方法和步骤,便于查找和使用。

开发环境:WAMP
网址:http://www.wampserver.com/en/

实例一,Apaceh配置localhost虚拟主机步骤
1,用记事本打开apache目录下httpd.conf文件(如:D:wampinapacheapache2.2.8httpd.conf),找到如下模块

  1. #Virtual hosts
  2. #Include conf/extra/httpd-vhosts.conf

去掉前面的#,这样就开启了httpd-vhosts虚拟主机文件。这时候重启wamp环境,无法打开localhost,需要在httpd-vhosts.conf配置一下。

2,用记事本打开httpd-vhosts文件,配置好localhost虚拟主机,参照httpd-vhosts文件中实例,修改成如下:

  1. <VirtualHost *:80>
  2. ServerAdmin webmaster@dummy-host.localhost
  3. DocumentRoot"D:wampwww"
  4. ServerNamelocalhost
  5. ServerAlias localhost
  6. ErrorLog "logs/dummy-host.localhost-error.log"
  7. CustomLog "logs/dummy-host.localhost-access.log" common
  8. </VirtualHost>

修改配置如下:
DocumentRoot 修改为本地wamp环境下的www目录(如:D:wampwww)
ServerName改为localhost

3,重启Apache,发现localhost可以正常打开,配置localhost比较简单。

实例二,Apaceh配置test.biuuu.com虚拟主机步骤

1,方法同上,复制配置代码修改如下:

  1. <VirtualHost *:80>
  2. ServerAdmin test@biuuu.com
  3. DocumentRootE:WebRootiuuu
  4. ServerNametest.biuuu.com
  5. ErrorLog "logs/dummy-host2.localhost-error.log"
  6. CustomLog "logs/dummy-host2.localhost-access.log" common
  7. </VirtualHost>

2,打开host文件(C:WINDOWSsystem32driversetchosts),增加一行代码

  1. 127.0.0.1 test.biuuu.com

3,在浏览器中打开test.biuuu.com,发现如下错误403 Forbidden错误
Forbidden You don't have permission to access / on this server.

分析:这主要是目录访问权限没有设置,需要设置对目录的访问权!

4,打开httpd文件,找到如下语句

  1. <Directory />
  2. Options FollowSymLinks
  3. AllowOverride None
  4. Order deny,allow
  5. Deny from all
  6. </Directory>

复制以上代码,并进行目录修改,把/替换为E:WebRootiuuu,修改virtualHost代码如下

  1. <VirtualHost *:80>
  2. ServerAdmin test@biuuu.com
  3. DocumentRoot E:WebRootiuuu
  4. ServerName test.biuuu.com
  5. ErrorLog "logs/dummy-host2.localhost-error.log"
  6. CustomLog "logs/dummy-host2.localhost-access.log" common
  7. <DirectoryE:WebRootiuuu>
  8. Options FollowSymLinks
  9. AllowOverride None
  10. Order deny,allow
  11. Denyfrom all
  12. </Directory>
  13. </VirtualHost>

在浏览器中测试发现还是打不开,提示如上403 Forbidden错误,修改其中的Deny from all为allow from all

5,重启Apache,虚拟主机配置成功!

注意事项
1,目录路径,如E:WebRootiuuu
2,访问权限,如上Deny from all修改为allow from all
3,host文件,配置虚拟域名host指向
4,httpd文件,打开Include conf/extra/httpd-vhosts.conf模块
5,httpd-vhosts文件,配置虚拟主机

6,还有可能是linux 的 selinux 防火墙导致这个原因,切记切记

使用Apaceh配置httpd-vhosts虚拟主机对于开发人员来说比较简单,但却非常重要,仅供参考!

参考资料:

http://httpd.apache.org/docs/2.2/vhosts/

http://httpd.apache.org/docs/2.0/vhosts/examples.html

原创文章如转载,请注明:转载自 必优博客http://www.biuuu.com/

顾银鑫 注:如发生Fatal error: Allowed memory size of 8388608 bytes exhausted错误

修改php.ini设置memory_limit = 12M(默认8M)

或只需要在你的程序头部加入: ini_set("memory_limit","12M");

  • 找到httpd.conf,用记事本打开httpd.conf,然后将
  1. <Directory/>
  2. OptionsFollowSymLinks
  3. AllowOverrideNone
  4. Orderdeny,allow
  5. Denyfromall
  6. </Directory>

这里改成:

  1. <Directory/>
  2. OptionsFollowSymLinks
  3. AllowOverrideNone
  4. Orderdeny,allow
  5. Allowfromall
  6. </Directory>
PHP中级篇 Apache配置httpd-vhosts虚拟主机总结及注意事项[OK]第1张

还有一处将下面

  1. #onlineofflinetag-don'tremove
  2. OrderDeny,Allow
  3. Deny fromall
  4. Allowfrom127.0.0.1
  5. </Directory>

将Deny fromall改为:Allowfromall ,然后重新启动所有服务。

免责声明:文章转载自《PHP中级篇 Apache配置httpd-vhosts虚拟主机总结及注意事项[OK]》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇最小二乘法多项式拟合的Java实现wpf布局控件总结下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

centos7下 PHP添加pdo_myql扩展

1、确认PHP.ini位置, 可以到PHPinfo()查看,没有的可以查找php.ini复制一份; 2.查找PHP(5.6.30)里面的扩展目录 find / -name pdo_mysql 我的在/usr/local/src/php-5.6.30/ext/pdo_mysql 3.打开/usr/local/src/php-5.6.30/ext/pdo_my...

PHP获取今天、昨天、明天的日期

<?php echo "今天:".date("Y-m-d")."<br>"; echo "昨天:".date("Y-m-d",strtotime("-1 day")), "<br>"; echo "明天:".date("Y-m-d",strtotime("+1 day")). "<br>"; echo "一周...

Ubuntu 16.04 LTS 安装 Nginx/PHP 5.6/MySQL 5.7 (LNMP) 与Laravel

Ubuntu 16.04 LTS 安装 Nginx/PHP 5.6/MySQL 5.7 (LNMP) 与Laravel 1、MySQL安装【安装 MariaDB】MariaDB是MySQL的一个分支首先,更新升级系统$ sudo apt update$ sudo apt upgrade安装MariaDB:$ sudo apt install mariadb...

CVE-2019-0232漏洞复现

CVE-2019-0232 1、漏洞简介 CVE-2019-0232漏洞是由于Tmocat CGI将命令行参数传递给Windows程序的方式存在错误,使得CHIServler被命令注入影响。 该漏洞只影响Windows平台,要求启用了CGIServlet和enableCmdLineArguments参数。但是CGIServlet和enableCmdLine...

VScode 搭建PHP环境

先按照这个搭建 使用Visual Studio Code搭建PHP调试环境 要注意的几个点 上文中的4.2. 配置Visual Studio Code 指定php的路径 配置 PHP Debug 配置完成后 文件夹下后有个 .vscode 文件夹 下有个 launch.json 内容如下 { // 使用 IntelliSense 了解相关属性。...

浏览器访问svn

文章转自https://www.cnblogs.com/ayanmw/archive/2011/12/19/2294054.html 你看到的这个文章来自于http://www.cnblogs.com/ayanmw 基本的安装包有: subversion /httpd/ svn的httpd的mod_dav_svn mod_authz_svn 两个模块.(...