XAMPP:连接到localhost修复? [持续]

时间:2014-01-07 12:09:00

标签: apache

我刚在计算机上安装了XAMPP Windows 1.8.2。端口80是安全的,并且在Apache使用时没有任何问题或任何端口冲突。我总是打开Xampp并在控制面板中启动Apache和MySQL模块。两个模块都在运行,每当我点击Apache管理按钮时,它会将我重定向到localhost页面,加载需要一段时间,然后出现此错误。

Network Error (tcp_error)

如果它对你们来说太小了,那么错误就说:网络错误(tcp_error)

发生通讯错误:“拒绝连接” Web服务器可能已关闭,太忙或遇到阻止其响应请求的其他问题。您可能希望稍后再试。

如需帮助,请与您的网络支持团队联系。

如果我尝试使用127.0.0.1Access forbidden!

,则会显示另一个错误

localhost更改为130.147.134.66注意:我使用代理网络,IP地址为130.147.134.251

我已尝试更改和更新C:\Windows\System32\Drivers\Etc\hosts.中的主机文件,但问题仍然存在。

记住这一点我不熟悉使用Xampp,自从我开始使用phpMyAdmin和MySQL以来仅一周了

我的httpd-xampp.conf文件:

#
# XAMPP settings
#

<IfModule env_module>
    SetEnv MIBDIRS "C:/xampp/php/extras/mibs"
    SetEnv MYSQL_HOME "\\xampp\\mysql\\bin"
    SetEnv OPENSSL_CONF "C:/xampp/apache/bin/openssl.cnf"
    SetEnv PHP_PEAR_SYSCONF_DIR "\\xampp\\php"
    SetEnv PHPRC "\\xampp\\php"
    SetEnv TMP "\\xampp\\tmp"
</IfModule>

#
# PHP-Module setup
#
LoadFile "C:/xampp/php/php5ts.dll"
LoadModule php5_module "C:/xampp/php/php5apache2_4.dll"

<FilesMatch "\.php$">
    SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
    SetHandler application/x-httpd-php-source
</FilesMatch>

#
# PHP-CGI setup
#
#<FilesMatch "\.php$">
#    SetHandler application/x-httpd-php-cgi
#</FilesMatch>
#<IfModule actions_module>
#    Action application/x-httpd-php-cgi "/php-cgi/php-cgi.exe"
#</IfModule>


<IfModule php5_module>
    PHPINIDir "C:/xampp/php"
</IfModule>

<IfModule mime_module>
    AddType text/html .php .phps
</IfModule>

ScriptAlias /php-cgi/ "C:/xampp/php/"
<Directory "C:/xampp/php">
    AllowOverride None
    Options None
    Require all denied
    <Files "php-cgi.exe">
          Require all granted
    </Files>
</Directory>

<Directory "C:/xampp/cgi-bin">
    <FilesMatch "\.php$">
        SetHandler cgi-script
    </FilesMatch>
    <FilesMatch "\.phps$">
        SetHandler None
    </FilesMatch>
</Directory>

<Directory "C:/xampp/htdocs/xampp">
    <IfModule php5_module>
        <Files "status.php">
            php_admin_flag safe_mode off
        </Files>
    </IfModule>
    AllowOverride AuthConfig
</Directory>

<IfModule alias_module>
    Alias /security "C:/xampp/security/htdocs/"
    <Directory "C:/xampp/security/htdocs">
        <IfModule php5_module>
            <Files "xamppsecurity.php">
                php_admin_flag safe_mode off
            </Files>
        </IfModule>
    Order deny,allow
    Deny from all
    Allow from localhost
   </Directory>

    Alias /licenses "C:/xampp/licenses/"
    <Directory "C:/xampp/licenses">
        Options +Indexes
        <IfModule autoindex_color_module>
            DirectoryIndexTextColor  "#000000"
            DirectoryIndexBGColor "#f8e8a0"
            DirectoryIndexLinkColor "#bb3902"
            DirectoryIndexVLinkColor "#bb3902"
            DirectoryIndexALinkColor "#bb3902"
        </IfModule>
        Require all granted
   </Directory>

    Alias /phpmyadmin "C:/xampp/phpMyAdmin/"
    <Directory "C:/xampp/phpMyAdmin">
        AllowOverride AuthConfig
    Order allow,deny
    Allow from all
        Require all granted
    </Directory>

    Alias /webalizer "C:/xampp/webalizer/"
    <Directory "C:/xampp/webalizer">
        <IfModule php5_module>
            <Files "webalizer.php">
                php_admin_flag safe_mode off
            </Files>
        </IfModule>
        AllowOverride AuthConfig
        Require all granted
    </Directory>
</IfModule>

#
# New XAMPP security concept
#
<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">
    Order deny,allow
    Deny from all
    Allow from ::1 127.0.0.0/8 \
        fc00::/7 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 \
        fe80::/10 169.254.0.0/16

    ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</LocationMatch>

5 个答案:

答案 0 :(得分:4)

它已经给你答案了。
看看你的第二张照片。

This setting can be configured in the file "httpd-xampp.conf"

如何“修复”这个:

:要禁用本地地址的代理服务

或者:

   1) open the file "\xampp\apache\conf\extra\httpd-xampp.conf" in a texteditor
   2) replace "Allow from localhost" with "Allow from YOURLOCALIP" (2 times)
   3) save the file
   4) restart Apache

另见http://www.apachefriends.org/f/viewtopic.php?t=32503#p131519

修改

这是在120-128行:

<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">
    Order deny,allow
    Deny from all
    Allow from ::1 127.0.0.0/8 \
        fc00::/7 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 \
        fe80::/10 169.254.0.0/16 \
        YOURLOCALIP <--------------------------------------------------------------

    ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</LocationMatch>

答案 1 :(得分:2)

XAMPP的安全配置在LocationMatch中指定为chill0r,在120-128行。

您的配置允许来自:: 1 127.0.0.0/8 \,fc00 :: / 7 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16和fe80 :: / 10 169.254.0.0 / 16因为您使用代理并且它拒绝所有内容,所以永远不会匹配。这就是Order语句的用武之地。它告诉你的配置首先匹配deny然后允许,所以它总是拒绝,因为你有拒绝所有。

您需要更改配置,以便它不会拒绝所有内容并至少允许您自己的IP。由于这听起来像是在运行本地开发环境而不是暴露它,因此您可以考虑删除所有限制:

<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">
    Allow from all

    ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</LocationMatch>

如果这样做,请配置防火墙阻止从网络外部访问端口80(这可以在您的计算机或路由器上完成)。或者,您可以使用包含代理的部分IP将其配置为适用于IP范围:

<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">
    Order allow,deny
    Deny from all
    Allow from 130.147.134

    ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</LocationMatch>

请注意,订单已更改为拒绝,允许允许,拒绝,因此它将首先检查允许语句。

我还注意到这两个请求是针对不同的路径,第一个是&#34; /&#34;第二个是&#34; / xampp /&#34;而后者则是不被拒绝的。

在IfModule alias_module中,您应该添加一个别名:

Alias "/" "C:/xampp/htdocs/xampp"

这将有助于您开始,但是您需要确保了解指令,特别是Alias和AliasMatch,因为您的路由变得更加复杂。或者,您可以在C:/ xampp / htdocs /目录而不是C:/ xampp / htdocs / xampp中进行开发。

答案 2 :(得分:1)

在启动XAMPP服务器之前,请确保关闭其他正在运行的服务,例如Skype和使用相同端口号的其他服务器。

答案 3 :(得分:1)

按照以下步骤

  1. 在Apache模块的XAMPP中,选择配置按钮 httpd.conf
  2. 在以下部分中评论“拒绝所有”,

    <LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">
            Order deny,allow
           #Deny from all
            Allow from ::1 127.0.0.0/8 \
                    fc00::/7 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 \
                    fe80::/10 169.254.0.0/16
    
            ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
    </LocationMatch>
    
  3. 重启 XAMPP(重要步骤)

答案 4 :(得分:0)

我遇到了同样的问题,解决方案比其他答案更容易。

1)在您的电脑中安装XAMPP,在本例中为Windows 8。 2)开始&gt;管理工具&gt;服务&gt; Web部署代理服务并按STOP。

通常,Web部署使用端口80,默认情况下是XAMPP使用的端口。如果您停止该过程并在Web浏览器中编写localhost,则应该能够访问phpmyadmin。

希望有所帮助:)