1

这些是我的虚拟机设置:

HOST: windows 7 ultimate 32bit
GUEST: CentOs 6.3 i386
Virtualization soft: Oracle virtualBox 4.1.22
Networking: NAT -> (PORT FORWARD: HOST:8080 => GUEST:80)
Shared Folder: centos

所有项目文件都进入共享文件夹,并且为每个项目文件创建一个虚拟主机 conf 文件,/etc/httpd/conf.d/如下所示/etc/httpd/conf.d/$domain

在我在centos中禁用windows防火墙和iptables之前,我在浏览器中看不到任何东西,如果我输入例如:http://www.$domain:8080/我看到的是:

Forbidden

You don't have permission to access / on this server.
Apache/2.2.15 (CentOS) Server at www.$domain.com Port 8080

示例虚拟主机 conf 文件:

<VirtualHost *:80>
    #General
    DocumentRoot /media/sf_centos/path/to/public_html
    ServerAdmin webmaster@$domain
    ServerName www.$domain
    ServerAlias $domain *.$domain

    #Logging
    ErrorLog /var/log/httpd/$domain-error.log
    CustomLog /var/log/httpd/$domain-access.log combined

    #mod rewrite
    RewriteEngine On
    RewriteLog /var/log/httpd/$domain-rewrite.log
    RewriteLogLevel 0
</VirtualHost>

centos共享文件夹可供来宾使用/media/sf_centos 这些是以下文件权限sf_centos

drwxrwx--- root vboxsf

vboxsf组包括:apacheroot

所以这些是我的问题:

1-如何解决禁忌问题?

2-如何设置主机和访客防火墙?

3-如何改进这个开发环境以尽可能多地模拟生产环境,特别是安全改进?

4

1 回答 1

0

对于 #1/2:这是由于 VirtualBox 使用的自动挂载方法导致的权限问题。您必须手动安装它,而不是自动安装。

suomynona 的帖子(第 3 次回复)有一些关于解决此问题的分步说明: https ://forums.virtualbox.org/viewtopic.php?f=3&t=38891#p179152

至于#3,标准做法是拥有一个尽可能模拟生产的登台服务器(相同的操作系统、相同的更新、版本等)。这将允许您在部署到生产之前从本地开发环境进行部署以进行集成测试。有时我们甚至会设置我们的开发虚拟机使用与生产相同的操作系统来处理版本/兼容性问题可能会导致头痛的更复杂的项目。

于 2012-12-20T20:08:18.873 回答