cod*_*sfy 12 apache xampp networking client-server virtualhost
我正在尝试进行设置,以便我可以从计算机B访问计算机A中的虚拟主机上的网站.A和B都在同一网络上.我在Win 7上使用xampp.
因此,问题在于计算机A(服务器)在httpd-vhosts.conf文件中具有如下虚拟主机配置.
NameVirtualHost project:81
<VirtualHost project:81>
DocumentRoot "D:/work/website"
ServerName project:81
<Directory "D:/work/website">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
(使用端口81作为端口80运行IIS,但是对这些东西不太了解)
此配置在本地计算机(服务器)上正常工作.即项目:浏览器地址栏中的81开启了网站.
现在在计算机B(客户端)上,我更改了hosts文件以包含服务器的IP以及虚拟主机的名称,如: -
192.168.1.7项目
现在,当我进入项目:客户端浏览器上的81 ..它带我到服务器,但它不带我到虚拟主机目录,而是它采取到默认目录..即在我的情况下是
C:\ XAMPP\htdocs中
现在我卡住了,无法让客户端指向当前目的地.因此,任何人都可以建议我在这里做错了什么或我需要做的其他事情,以便从客户端机器访问正确的虚拟主机站点.
在此先感谢您的帮助
cod*_*sfy 18
好吧因此,Seto El Kahfi对我这个老问题的回答让我在Apache的网站上做了更多的研究和阅读.
所以我得到的是这个,我的NameVirtualHost指令是不合适的.所以不要这样,
NameVirtualHost project:81
<VirtualHost project:81>
DocumentRoot "D:/work/website"
ServerName project:81
<Directory "D:/work/website">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
我必须做的就是这个.
NameVirtualHost *:81
<VirtualHost *:81>
DocumentRoot "D:/work/website"
ServerName project
<Directory "D:/work/website">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
注意'*',我也可以在那里使用IP地址.(在这种情况下,我的服务器(机器A)本地IP)都可以工作.现在我所要做的就是在客户端机器上输入"project:81",我得到了我希望看到的东西.. :)
我从这里得到的东西很少.
1)如何使用NameVirtualHost(或其目的基本上是什么.).在这里阅读更多
http://httpd.apache.org/docs/2.2/mod/core.html#namevirtualhost
这个也很好 http://www.thegeekstuff.com/2011/07/apache-virtual-host/
2)您可以通过命令行使用它:
httpd -D DUMP_VHOSTS
Run Code Online (Sandbox Code Playgroud)
了解虚拟主机的设置方式(如果您的设置出现问题,还会给您一些关于优先级的警告)
3)其他的帮助你的姿态让你自己帮助.. :)所以保持帮助和摇摆.
| 归档时间: |
|
| 查看次数: |
30699 次 |
| 最近记录: |