Apache配置多站点--403错误,主目录和分站点目录问题 1主站点权限是/var/www  一定比分站点/var/www/a.santifuture.cn 高一级http.conf PHP中级篇 Apache配置httpd-vhosts虚拟主机总结及注意事项

2、IncludeOptional conf.d/*.conf

注意php没解析 是没有引入php的模块 ,这句是引入众多模块服务器,包括php、mysql

3、记得配置默认ip访问的路径和权限,一般是给个欢迎页面,或者给phpadmin用

http.conf

# apche本身并不能解析php 引入mysql和php等模块服务器

IncludeOptional conf.d/*.conf

# 引入虚拟机配置目录

IncludeOptional sites-available/*.conf

# 配置ip默认目录的访问路径

<Directory "/var/www">

Options FollowSymlinks

AllowOverride All

Require all granted

</Directory>

<VirtualHost *:80>

ServerAdmin webmaster@dummy-host3.example.com

DocumentRoot "/var/www"

ServerName "47.94.240.42"

ErrorLog "logs/dummy-host3.example.com-error_log"

CustomLog "logs/dummy-host3.example.com-access_log" common

</VirtualHost>

sites-available

<VirtualHost *:80>

ServerAdmin webmaster@dummy-host3.example.com

DocumentRoot "/var/www/a.santifuture.cn"

ServerName a.santifuture.cn

ErrorLog "logs/dummy-host3.example.com-error_log"

CustomLog "logs/dummy-host3.example.com-access_log" common

</VirtualHost>

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:\wamp\bin\apache\apache2.2.8\httpd.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:\wamp\www"

  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:\wamp\www)

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:\WINDOWS\system32\drivers\etc\hosts),增加一行代码

  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:\WebRoot\biuuu,修改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/

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

开发环境:WAMP

网址:http://www.wampserver.com/en/

实例一,Apaceh配置localhost虚拟主机步骤

1,用记事本打开apache目录下httpd.conf文件(如:D:\wamp\bin\apache\apache2.2.8\httpd.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:\wamp\www"

  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:\wamp\www)

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:\WINDOWS\system32\drivers\etc\hosts),增加一行代码

  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:\WebRoot\biuuu,修改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/