【问题标题】:.htaccess how to remove subdirectory?.htaccess 如何删除子目录?
【发布时间】:2013-06-19 09:20:34
【问题描述】:

我有一个想要进入的网站

http://mysite.com/myfolder

但是去(从加载index.php)

http://mysite.com/dir/myfolder

那么我应该使用哪种RewriteRule

以下规则不起作用,导致所有页面出现“500:内部服务器错误”。

RewriteRule ^$ dir/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ dir/$1

谢谢!

【问题讨论】:

    标签: .htaccess mod-rewrite url-rewriting subdirectory


    【解决方案1】:

    只要没有路径包含“dir”字符串,以下内容应该可以工作:

    RewriteEngine On
    RewriteCond %{HTTP_HOST} !dir
    RewriteRule ^(.*)$ http://mysite.com/dir/$1 [R=301,L]
    

    【讨论】:

      【解决方案2】:

      通过httpd.conf启用mod_rewrite和.htaccess,然后把这段代码放到你.htaccessDOCUMENT_ROOT目录下:

      Options +FollowSymLinks -MultiViews
      # Turn mod_rewrite on
      RewriteEngine On
      RewriteBase /
      
      RewriteRule (?!^dir/)^(.*)$ /dir/$1 [L,NC]
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-10-03
        • 2012-06-25
        • 1970-01-01
        • 2013-05-18
        • 1970-01-01
        • 1970-01-01
        • 2010-11-28
        • 1970-01-01
        相关资源
        最近更新 更多