猿问

禁止您无权访问此服务器上的/

我今天要做的就是将重定向规则写入子文件夹,例如:您输入URL:example.com,然后将您重定向到example.com/subfolder


这样简单的愿望。我试图在互联网上找到解决方案。互联网告诉我要在htdocs根目录中添加一个.htaccess文件,其内容如下:


RewriteEngine on

RewriteCond %{HTTP_HOST} ^example\.com$

RewriteRule (.*) http://www.example.com/$1 [R=301,L]

RewriteRule ^$ subfolder [L]

我做到了 但是显然没有成功,他们没有告诉我我必须取消注释httpd.conf中的模块:


LoadModule rewrite_module modules/mod_rewrite.so

所以我也这样做了。再没有成功。他们没有告诉我我必须更改httpd.conf以便启用.htaccess文件:


<Directory />

    Options FollowSymLinks

    AllowOverride None

    Order deny,allow

    Deny from all

</Directory>


DocumentRoot "c:/Apache24/htdocs"

<Directory "c:/Apache24/htdocs">

    Options Indexes FollowSymLinks

    AllowOverride All

    Require all granted

</Directory>

再次没有成功,因为输入URL时出现此错误:


禁止您无权访问此服务器上的/。


现在我陷入困境,无法在互联网上找到更多解决方案。出于私人原因,我仅在Windows 7计算机上运行Apache 2.4。


RISEBY
浏览 2169回答 3
3回答

Cats萌萌

由于使用.htaccess和mod_rewrite出现错误而找到了我的解决方案。对于Apache 2.4以及所有* .conf文件(例如httpd-vhosts.conf,http.conf,httpd-autoindex.conf ..etc),请使用Require all granted代替Order allow,denyAllow from all该订单并允许指令被弃用的Apache 2.4。

手掌心

工作方法{如果除了配置没有其他问题}默认情况下,Appache 并不限制来自ipv4的访问。(常见的外部IP)可能会限制“ httpd.conf”(或“ apache2.conf”)中的配置,具体取决于您的apache配置)解:全部替换:<Directory />&nbsp; &nbsp; &nbsp;AllowOverride none&nbsp; &nbsp; Require all denied</Directory>与<Directory />&nbsp; &nbsp; &nbsp;AllowOverride none#&nbsp; &nbsp; Require all denied</Directory>因此消除了对Apache的所有限制更换Require local用 Require all granted的C:/wamp/www/目录<Directory "c:/wamp/www/">&nbsp; &nbsp; Options Indexes FollowSymLinks&nbsp; &nbsp; AllowOverride all&nbsp; &nbsp; Require all granted#&nbsp; &nbsp;Require local</Directory>

白猪掌柜的

解决方法很简单。如果您尝试使用本地IP地址访问服务器,并且出现错误消息,例如“ 禁止访问”,则您无权访问此服务器上的/只需从(在我的情况下C:/wamp/bin/apache/apache2.2.21/conf/httpd.conf)打开httpd.conf文件搜索<Directory "D:/wamp/www/">.........</Directory>从127.0.0.1替换 允许至全部允许保存更改并重新启动服务器。现在,您可以使用IP地址访问服务器
随时随地看视频慕课网APP

相关分类

Java
我要回答