加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 将目录名添加到SEF网址中,并在url中不使用它而传递id值

发布时间:2020-12-13 22:46:10 所属栏目:PHP教程 来源:网络整理
导读:我是关于.htaccess和重写函数的新手. 我搜索了很多页面,但找不到解决方案. 这是我的问题: 我在kurum.php文件中有这些格式的网址: fxrehber.com/kurum.php?id=$krmIDsef=$sef 所以我的正常网址是: http://fxrehber.com/kurum.php?id=7u0026amp;sef=ata-fo
我是关于.htaccess和重写函数的新手.
我搜索了很多页面,但找不到解决方案.
这是我的问题:

我在kurum.php文件中有这些格式的网址:

fxrehber.com/kurum.php?id=$krmID&sef=$sef

所以我的正常网址是:

http://fxrehber.com/kurum.php?id=7u0026amp;sef=ata-foreks

我的.htaccess的相关部分是:

<IfModule mod_rewrite.c>
  Options +FollowSymlinks
  RewriteEngine On
  RewriteRule ^([0-9]+)-([a-zA-Z0-9-_]+)$/kurum.php?id=$1&sef=$2
</IfModule>

所以我可以用这种格式获得SEF网址:

http://fxrehber.com/7-ata-foreks

我有两个问题:

1.可以使用.htaccess将此URL更改为此格式,而无需将kurum.php文件移动到新目录中吗?

http://fxrehber.com/kurumlar/7-ata-foreks

(我可以通过.htaccess添加“/ kurumlar”目录,但我的css和图像链接不起作用)

2.我可以传递id值而不在SEF网址中提及它,如下所示:

http://fxrehber.com/kurumlar/ata-foreks(对我来说这是最好的选择)

如果我不能这样做,我是否必须只使用$sef变量从数据库中选择文章?对此有不利之处吗?

我希望这是对我的问题的充分解释.
谢谢.

解决方法

1.可以使用.htaccess将此URL更改为此格式,而无需将kurum.php文件移动到新目录中吗?

http://fxrehber.com/kurumlar/7-ata-foreks

(我可以通过.htaccess添加“/ kurumlar”目录,但我的css和图像链接不起作用)

我在php文件中使用了图像的完整路径,它适用于此:
的.htaccess:

<IfModule mod_rewrite.c>
  Options +FollowSymlinks
  RewriteEngine On
  RewriteRule ^kurumlar/([0-9]+)-([a-zA-Z0-9-_]+)$/kurum.php?id=$1&sef=$2
</IfModule>

kurum.php:

<?php
    var_dump($_REQUEST);
?>
<img src="/sites/default/files/1.png">

2.我可以传递id值而不在SEF网址中提及它,如下所示:

http://fxrehber.com/kurumlar/ata-foreks(对我来说这是最好的选择)

只有ata-foreks可以用作文章的唯一别名并使用而不是id.

“Is there a disadvantage about this?”

是.按字符串搜索较慢,然后按整数搜索.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读