htaccess-RewriteRule在实时服务器上有效,但在本地主机上无效

时间:2019-03-26 12:35:14

标签: .htaccess redirect localhost

我具有以下重写条件和规则,用于在url路径中隐藏目录:

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/_core/$1.php -f
RewriteRule ^(.+?)/?$ _core/$1.php [L]

RewriteCond %{DOCUMENT_ROOT}/_landing/$1.php -f
RewriteRule ^(.+?)/?$ _landing/$1.php [L]

因此,_landing_core目录中的任何页面都不会显示该文件夹。所以我的结构是:

index.php
_core/
    page-1.php
    page-2.php
_landing/
    cat-1.php

它允许cat-1.php的网址为:

mywebsite.com/cat-1.php (rather than mywebsite.com/_landing/cat-1.php)

问题是,当htaccess和文件夹位于我的public_html文件夹中但不在我的Mac上的本地主机设置中时,这在实时服务器上有效。只会导致未找到404。

我的本​​地站点结构如下:

Macintosh HD / Users / xxxx / Documents / Websites / mywebsite / .htaccess
Macintosh HD / Users / xxxx / Documents / Websites / mywebsite / _landing / ..and so on

0 个答案:

没有答案