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


    经常使用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. ServerName localhost

    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. DocumentRoot E:ProjectRoot

    4. ServerName test.sallency.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.sallency.com

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

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

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

    1. <Directory />

    2. Options FollowSymLinks

    3. AllowOverride All

    4. Order deny,allow

    5. Deny from all

    6. </Directory>

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

    1. <VirtualHost *:80>

    2. ServerAdmin test@biuuu.com

    3. DocumentRoot E:ProjectRoot

    4. ServerName test.sallency.com

    5. ErrorLog "logs/dummy-host2.localhost-error.log"

    6. CustomLog "logs/dummy-host2.localhost-access.log" common

    7. <Directory E:ProjectRoot>

    8. Options FollowSymLinks

    9. AllowOverride All

    10. Order deny,allow

    11. Deny from all

    12. </Directory>

    13. </VirtualHost>

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

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

    注意事项
    1,目录路径,如E:ProjectRoot

    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

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

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

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

    原文:http://blog.163.com/lgh_2002/blog/static/44017526201182514650248/

  • 相关阅读:
    python学习之关于变量与内存的问题
    [题解]GDUT 2020年11月赛DE题
    【转】关于Oracle默认用户名system密码不正确登录不上解决方案
    [转载] Monitor Tools
    java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.getAsyncContext()Ljavax/servlet/AsyncContext;
    【SSM】Result Maps collection already contains value for crud.dao.EmployeeMapper.BaseResultMap
    EL表达式失效,页面取不到数据
    处理回归BUG最佳实践
    固定QPS压测初试
    Java字符串到数组的转换--最后放大招
  • 原文地址:https://www.cnblogs.com/llll/p/4354044.html
Copyright © 2020-2023  润新知