【问题标题】:How to change URL with htaccess [closed]如何使用 htaccess 更改 URL [关闭]
【发布时间】:2013-05-06 20:41:57
【问题描述】:

我的 htaccess 文件中有这段代码用于显示公司简介:

RewriteRule ([a-zA-Z0-9_+-]+)\/home\ view_details.php

这段代码在这个网址上运行良好

http://www.example.com/zoom-international-fcz-/home.html

现在我需要用这个URL重写,不需要添加home.html,而且zoom-international-fcz不是静态字符串,它是动态的......

http://www.example.com/zoom-international-fcz/

【问题讨论】:

  • 所以基本上你想要你现在拥有的东西,但没有home.html 部分?只需从表达式中删除 home 即可。
  • 谢谢,其实home.html是view_details.php的引用字符串,去掉home.html后,现在重定向到view_details.php
  • 那我猜你也需要修复那个脚本。
  • 所以基本上去掉结尾斜线和home.html?
  • 执行此操作后,另一个rewrite URL冲突并报错

标签: php .htaccess url mod-rewrite


【解决方案1】:

动态重写规则示例

Options +FollowSymlinks
RewriteEngine on
RewriteRule ^files/([^/]+)/([^/]+).zip /download.php?section=$1&file=$2 [NC]

将允许您将此链接显示为..

http://site.pl/files/games/file.zip

() 中的两个正则表达式被放入 $1 和 $2 中,这些参数可在 download.php 站点上的 $_GET 变量中找到。

【讨论】:

  • 我只需要site.pl/files,文件是一个来自数据库的slug,通过这个slug我得到ID并在页面上显示内容。
  • RewriteRule ^files/ /download.php [NC] 它将从 site.com/files 重定向到 /download.php
  • 谢谢,但我已经问过了,我不想在我的 URL 上显示任何静态字符串,例如文件。
  • 我不想在我的 htaccess 代码上提供任何参考词,例如 RewriteRule ([a-zA-Z0-9_+-]+)\/home\ view_details.php 或 RewriteRule ^demo \/([a-zA-Z0-9_+-]+) view_details.php 我想要这种类型的 URL 来时 www.example.com/one/ www.example.com/two/ www.example.com/three /www.example.com/four/ 它是自动配置 veiw_deaitls.php 文件,所以我通过名称从数据库中获取一二三 slugs ID
猜你喜欢
  • 2012-03-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-16
  • 2013-02-27
相关资源
最近更新 更多