GoDaddy htaccess将站点根目录重定向到公用文件夹

时间:2014-04-28 21:04:53

标签: php apache .htaccess mod-rewrite redirect

这是我的网站地图:

/www.myMainSite.com
|   .htaccess 
|   index.php
|   
+---/www.myShaerHostedSite1.com
| 
+---/www.myShaerHostedSite2.com
| 
+---/www.myShaerHostedSite3.com
      |     .htaccess 
      |     index.php
      |   
      +---includes
      |       config.php
      |       functions.php
      |  
      \---public
      |    .htaccess
      |    index.php
      | 
      +---errors
      |       404.php 
      | 
      |+---forms
      |       forms.php 
      |    
      |+---admin
        index.php

以下是我的目标:

  1. www.myShaerHostedSite3.com重定向到子文件夹www.myShaerHostedSite3.com/public(拒绝访问根目录)
  2. 从网址
  3. 中删除public
  4. 拒绝访问includes文件夹
  5. 密码保护admin文件夹(这是我添加/删除用户的位置)
  6. 定义自定义错误404页
  7. 我还希望所有页面和子文件夹看起来都位于网站根目录上:

    www.myShaerHostedSite3.com/public/about.php ==> www.myShaerHostedSite3.com/about.php

    www.myShaerHostedSite3.com/public/forms/forms.php ==> www.myShaerHostedSite3.com/forms/forms.php

    我在GoDaddy共享主机上。我知道(现在)许多网络开发人员不喜欢他们,但这就是我现在所处的位置。

    我一直在阅读有关此事的帖子并尝试一切,没有任何作用。甚至apache.org都没有帮助。

    这是根目录中的.htaccess文件:

        #GoDaddy needs this to run 
        AddType application/x-httpd-php .html
        ServerSignature off
        ErrorDocument 404 /public/404.php
        <Files .htaccess>
        Order Allow,Deny
        Deny from all
        </Files>
        <Files config.php>
        Order Deny,Allow
        Deny from all
        </Files>
        ### GoDaddy needs these settings
        Options -Indexes -Multiviews +FollowSymlinks
        RewriteEngine On
        RewriteCond %{HTTP_HOST} ^myShaerHostedSite3\.com$ [OR]
        RewriteCond %{HTTP_HOST} ^www\.myShaerHostedSite3\.com$
        RewriteCond %{REQUEST_URI} !^/public/
        RewriteRule (.*) /public/$1
    

    我甚至没有得到密码保护,因为我甚至无法让Rewrite工作。

    我甚至在hostingmanager面板中尝试过URL重定向(建议使用GoDaddy支持)。

    我一直收到错误(页面不可用或其他内容)。我的错误页面甚至无效。

    这让我疯了。提前谢谢。

0 个答案:

没有答案