.ht 访问每个文件都找不到



每个文件都找不到.htaccess。但是,我通常可以访问任何有问题的文件。此外,.htaccess与这些文件中的任何一个位于同一文件夹中。

例如:如果我输入 https://example.com/post.php 它工作正常

但是,如果我尝试使用漂亮的链接(导致相同的文件post.php(,例如:https://example.com/vijest/slug/123 服务器响应404,则找不到文件。

任何其他漂亮的链接也会发生同样的情况,文件确实会退出,但是当通过.htaccess访问时,服务器会以404响应。

你能帮我吗?

RewriteEngine On    # Turn on the rewriting engine
<Files ~ "^.*.([Hh][Tt][Aa])">
Order allow,deny
Deny from all
Satisfy all
</Files>
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^.*.(css|jpe?g|gif|png|js|ico)$ [NC]
DirectoryIndex index.php
RewriteRule    ^vijest/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)?$    post.php?idNum=$2    [NC,L]

更新 1

我从同一台服务器复制了工作示例,但其他项目,但它不起作用......但我 1000000000% 确定这些文件确实存在于指定的路径中。

你需要像这样将第二个参数传递给.htaccess:post.php?idNum=$1&q=2第一个参数是Uniqe id,第二个参数是字符串url

Options +FollowSymLinks
RewriteEngine On
RewriteRule ^/ index.php [NC,L]
RewriteRule ^vijest/([a-zA-Z0-9_-]+)$   post.php?idNum=$1 [L]
RewriteRule ^vijest/(.*)/([a-zA-Z0-9_-]+)$    post.php?idNum=$1&q=2    [NC,L]

您的 url 应该保存在数据库中,如下所示:how-to-create-seo-url

你的PHP链接应该是这样的:<a href="vijest/<?php echo $row["news_url"];?>">See More</a>

post.php页面:$_GET['idNum'];和 然后您的查询echo $_GET['idNum'];

结果是:https://ibb.co/YDxQ8Mf 和两个参数 https://ibb.co/XSZnSMJ:

确保您的帖子.php是否位于带有htaccess的根文件夹中。

因此,如果有人通过此线程,我的问题出在文件名上。 它被命名为htaccesss,而不是htaccesss。如果您打开共享的屏幕截图,您将能够看到。

谢谢。

最新更新