无法从Intranet访问Wordpress门户

时间:2014-07-14 07:23:11

标签: wordpress apache virtualhost windows-server-2008-r2 wampserver

我正在尝试使用Wordpress为我的组织构建门户网站 我安装了Windows Server 2008 R2,Wampserver 2.5和WP 3.9.1 我按照Wampserver的指南为网站设置了虚拟主机。

在服务器上,一切正常。地址栏中的Localhost显示Wamp的主页面,该站点的链接仅显示该站点的名称(没有localhost),当我点击它时,它加载正常。

问题是尝试从Intranet上的客户端计算机访问它时 在地址栏中写入服务器计算机的名称时,我得到了Wamp的主页,没有问题。

该网站的链接仅显示网站的名称,当我点击它时,我收到一条错误消息,说明浏览器无法在该地址找到服务器。

当我在地址栏中手动写入服务器机器的名称/网站名称时,我会访问该网站,但它已损坏 - 只有文字显示。

我的设置有什么问题?

这是httpd.conf的相关部分:

<Directory "c:/wamp/www/">
  Options Indexes FollowSymLinks
  AllowOverride all
</Directory>

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

这是httpd-vhosts.conf文件:

 <VirtualHost *:80>
     DocumentRoot "c:/wamp/www"
     ServerName localhost
     ServerAlias localhost
     <Directory  "c:/wamp/www">
        AllowOverride All
        Require all granted
     </Directory>
 </VirtualHost>

 <VirtualHost *:80>
    DocumentRoot "c:/wamp/www/hista-portal"
    ServerName hista-portal
    <Directory  "c:/wamp/www/hista-portal">
       AllowOverride All
        Require all granted
    </Directory>
 </VirtualHost>
  • 这是我提出的另一个问题的延续,但是由于情况发生了变化,在RiggsFolly的帮助下,并且进行了很多编辑,它太复杂了,无法继续进行,我认为最好开始一个新的。我希望我没有违反网站规则。

2 个答案:

答案 0 :(得分:0)

问题解决了。

嗯,有点。

在Wordpress网站设置中,我在开头就添加了服务器机器名称的站点URL。 现在,在客户端计算机上,当我在地址栏上写下服务器机器的名称/站点名称时,我到达了站点,它运行正常。
之前,我刚收到文字,因为图片的所有链接都是错误的。

主Wamp网站中的链接仍然是错误的,但我并不是真的需要它。 无论如何,我都会给门户网站用户提供直接链接。

答案 1 :(得分:0)

确定,

现在有很多方法可以让你以正确的方式跑步。

快速而且非常脏的方式:

Apache将vhost文件中的第一个VHOST视为默认值,这就是为什么您目前要访问WAMPServer主页而不是WP站点。所以你可以颠倒VHOST定义的顺序,如下所示: -

<VirtualHost *:80>
    DocumentRoot "c:/wamp/www/hista-portal"
    ServerName hista-portal
    <Directory  "c:/wamp/www/hista-portal">
       AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

<VirtualHost *:80>
     DocumentRoot "c:/wamp/www"
     ServerName localhost
     ServerAlias localhost
     <Directory  "c:/wamp/www">
        AllowOverride All
        Require local
     </Directory>
</VirtualHost>

现在,当您使用路由器WAMP IP地址时,您将进入WP站点。

更好的方式

使用DYNDNS或NOIP获得免费帐户,还有其他帐户。

这将允许您创建类似hista-portal@dyndns.net

的伪域名

然后,您创建一个新的虚拟主机定义,并将其作为服务器名称,如下所示: -

<VirtualHost *:80>
     DocumentRoot "c:/wamp/www"
     ServerName localhost
     ServerAlias localhost
     <Directory  "c:/wamp/www">
        AllowOverride All
        Require local
     </Directory>
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "c:/wamp/www/hista-portal"
    ServerName hista-portal
    <Directory  "c:/wamp/www/hista-portal">
       AllowOverride All
        Require local
        # maybe also allow access from your local lan
        Require ip 192.168.1  
    </Directory>
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "c:/wamp/www/hista-portal"
    ServerName hista-portal.dyndns.net
    <Directory  "c:/wamp/www/hista-portal">
       AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

注意我已经创建了localhost Require local,因此任何意外访问都会返回错误,这有助于通过仅使用IP地址的人嗅探您的网站来停止驱动。

请记住您正在使用Name Based Virtual Hosting,因此Apache确实希望看到浏览器发送的名称与其虚拟主机定义中的ServerNames之一相匹配。