如何将wamp服务器联机?

时间:2013-10-02 06:37:13

标签: wamp wampserver portforwarding

我已经尝试通过路由器进行端口转发,并且还禁用了我的防火墙。 我还编辑了httpd.conf。我改变了

Listen 80

Listen 8080

我还将ServerName从localhost:80更改为<private-ip>:80 i.e 192.168.1.2:80. 最后我改为

Order Allow,Deny
Allow from all
在offlineonline标签中

。 我有DLink DSL-2730U。在高级设置中&gt; NAT&gt; <外部端口开始8080和结束8080>内部端口启动8080和结束8080&gt;服务器IP保持为192.168.1.2 然后重新启动所有服务,即路由器和wamp。 但我仍然无法通过我的公共IP访问wamp,即59.95.81.56。

3 个答案:

答案 0 :(得分:10)

这应该是左键单击WAMPManager菜单并单击Put online的简单情况。

这样做会改变httpd.conf的这一部分:

如果使用Apache 2.2.x

#   onlineoffline tag - don't remove
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1 ::1 localhost

对此:

#   onlineoffline tag - don't remove
    Order Allow,Deny
    Allow from all

如果使用Apache 2.4.x

#   onlineoffline tag - don't remove
    Require local

对此:

#   onlineoffline tag - don't remove
    Require all granted

严格来说,这就是你应该做的所有事情!

但是你已经做了一些手工搞乱httpd.conf,这里有一些你需要检查的东西。我假设您想将端口更改为8080,而不是因为某种原因认为您必须这样做。如果您不想将端口号更改为8080,请在以下信息中使用80而不是8080.更改为8080只会让您的用户的生活更加复杂,但如果这只是一个并不重要的游戏网站,我想。 / p>

<强>的httpd.conf

# as your router probably does not support IPV6 change so apache only listens on IPV4
# you dont need to put the actual ip address of this PC in here as you say you did.

Listen 0.0.0.0:8080

# ServerName port need to match the Listen, your question made me think you may have left this as localhost:80
ServerName localhost:8080

如果使用Apache 2.2.x

# Assuming your site is in c:\wamp\www ( this section should already exist I just removed all the comments for brevity)
<Directory "d:/wamp/www/">
    Options Indexes FollowSymLinks
    AllowOverride all

    #
    # Controls who can get stuff from this server.
    #
#   onlineoffline tag - don't remove
    Order Allow,Deny
    Allow from all
</Directory>

如果使用Apache 2.4.x

# Assuming your site is in c:\wamp\www ( this section should already exist I just removed all the comments for brevity)
<Directory "d:/wamp/www/">
    Options Indexes FollowSymLinks
    AllowOverride all

    #
    # Controls who can get stuff from this server.
    #
#   onlineoffline tag - don't remove
    Require from all
</Directory>

如果您犯了更改此部分的常见错误,请将其更改回此处,或者您将向任何人提供对C:\的访问权限。

如果使用Apache 2.2.x

<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order Deny,Allow
    Deny from all
</Directory>

如果使用Apache 2.4.x

<Directory />
    Options FollowSymLinks
    Require all denied
</Directory>

我希望这里的某些内容让你偶然发现你的错误或遗漏。

编辑:其他信息

phpMyAdmin受到保护,不会像这样窥探:

编辑c:\ wamp \ alias \ phpmyadmin.conf

Alias /phpmyadmin "d:/wamp/apps/phpmyadmin3.5.1/"

# to give access to phpmyadmin from outside
# replace the lines
#
#        Order Deny,Allow
#   Deny from all
#   Allow from 127.0.0.1
#
# by
#
#        Order Allow,Deny
#   Allow from all
#

<Directory "d:/wamp/apps/phpmyadmin3.5.1/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
</Directory>

请参阅第Allow from 127.0.0.1行,它可以阻止与使用它的数据库不在同一台PC上的任何人。

因此,如果您尝试从互联网访问它,它将无法正常工作。

我想你可以TEMPORARILY将其改为:

Order Allow,Deny
Allow from all

或者更好的是,如果你知道你要从哪里测试它的IP地址,那就

Order Deny,Allow
Deny from all
Allow from 127.0.0.1 ::1 localhost
Allow from xxx.yyy.zzz.aaa

其中xxx.yyy.zzz.aaa是您的朋友IP地址。

答案 1 :(得分:0)

我在here得到了答案。

我在其他解决方案中遗漏的部分是下面的Configurtion:

将服务器配置为每个人都可以访问

最后一步!打开你的httpd.conf并找到这一行:

ServerName localhost:80

将其更改为:

ServerName <your private IP>:80

示例:

ServerName 192.168.1.27:80

答案 2 :(得分:0)

除了RiggsFolly的回答,您还可以在防火墙中打开一个端口,而不是取消它。

防火墙可以保护您免受许多事情的侵害,并且它会使您的计算机更容易受到攻击

Open port in Windows Firewall