【问题标题】:Htaccess ignoring directoriesHtaccess忽略目录
【发布时间】:2016-10-03 22:38:27
【问题描述】:

几个小时前,我用 Plesk 购买了一个 VPS,并将我的一个网站从我的虚拟主机转移到我的 VPS。该网站是用 Bootstrap 制作的,大部分页面都是 .php 文件。在我的虚拟主机上,我使用了一个 .htaccess 文件来引导页面而不使用 .php 扩展名。

目前,我正在使用 .htaccess,但它似乎忽略了目录。例如:如果我定向到http://mywebsite.com/php-page,它可以工作,但如果我定向到http://mywebsite.com/folder/php-page,它就不起作用,并且我得到一个带有“找不到文件”的白页。写在上面。

在 Plesk 中启用了重写。

我在 CentOS Linux 7.2.15.11 上使用 Plesk v12.5.30 和 PHP-FPM。

.ht访问代码:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php [NC,L]

我已经在 Stack 上进行了 Google 搜索和搜索,但没有任何效果。希望你们中的一些人可以帮助我。谢谢。

【问题讨论】:

    标签: php apache .htaccess mod-rewrite plesk


    【解决方案1】:

    尝试添加根斜线:

    来自:

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME}.php -f
    RewriteRule ^(.*)$ $1.php [NC,L]
    

    到:

    RewriteCond %{REQUEST_FILENAME}.php -f
    RewriteRule !.*\.php$ %{REQUEST_FILENAME}.php [QSA,L]
    

    【讨论】:

    • 感谢您的快速回复。我仍然收到“找不到文件”。文本。
    • 它正在识别文件夹,但 URL 变得混乱。如果我转到 mywebsite.com/folder/php-page 并单击指向另一个页面的链接,它只会将文件夹/php-page 添加到现有 URL,而不是刷新整个 URL。例如:mywebsite.com/folder/php-page -> mywebsite.com/folder/php-page/folder/php-page 或 mywebsite.com/folder/php-page/php-page/php-page
    • 我解决了。显然我需要在网址的底部添加一个“/”。例如:而不是
    猜你喜欢
    • 2012-09-16
    • 1970-01-01
    • 2015-07-20
    • 1970-01-01
    • 2019-03-13
    • 1970-01-01
    • 2017-10-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多