使用htaccess将请求映射到其他目录,而不需要重定向



我有一个像这样的项目结构:

/php/
    rest.php
/public/
    index.html
    /src/
        /css
        /js
        /img
/src/
  /sql/
.htaccess

我想如果只有/public/中的文件可以通过网络访问,那就太好了。我想通过域访问这些文件。将domain.tld/public替换为。如何将请求从/映射到/公共?

尝试了这样的东西,但它不工作!

RewriteEngine on
RewriteRule ^(.*)$ /public/$1

您可以在站点root .htaccess中使用此规则:

RewriteEngine on
RewriteRule ^(?!public/)(.*)$ public/$1 [L,NC]

(?!public/)为负向前看以防止无限循环,即如果URI已经以/public/开头,则避免转发到/public/

最新更新