当前位置: 首页 > 知识库问答 >
问题:

HTAccess, Regex,重写URL

蒋星雨
2023-03-14

嗯,我的.htaccess有问题,我想重写这个:

http://domain.com/a/thread-103518.html#103518

对这个

http://domain.com/a/103518

换句话说。。。我想删除“thread-”和“.”后面的所有内容,/a/必须是变量。。。还有其他带有/bla/和/code的论坛/

你有什么线索给我吗?非常感谢。

我的.htaccess现在:

重写康德%{REQUEST_FILENAME}!-d
重写康德%{REQUEST_FILENAME}. php-f
重写规则 ^(.*)$ $ 1.php

RewriteCond%{THE_REQUEST}^[A-Z]\/index.php
RewriteRule^index.php/?(*)/$1[L,R=301]

共有1个答案

包兴思
2023-03-14

将其添加到文档根目录中的.htaccess文件中

RewriteEngine On
RewriteRule ^([^/]+)/thread-(\d+) $1/$2? [DPI,L,R]

在Apache 2.2和2.4中测试:)

这假设为htaccess文件安装并激活了mod_rewrite。如果您不确定,要检查mod_rewrite是否已安装,请查看phpinfo();输出中的已安装模块列表默认情况下,不会为htaccess文件启用mod_rewrite。如果您正在管理自己的服务器,请打开httpd.conf并确保webroot目录块包含以下行之一:AllowOveride FileInfoAllowOveride All

 类似资料:
  • 我需要一个解决方案。需要重写两个URL: 到 我尝试了许多不同的解决方案,但没有一个奏效。然而,我确实重写了这些网址,就像我说的,但是我的页面没有打开,所以我想它都在细节中。 对于提示: > onama.php和pravila.php文件位于/pages/目录中 编辑: 我想我很幸运:)用这个再试了一次,它成功了,我不擅长.htaccess规则,但这是我问题的解决方案: 编辑(新问题) 我试图制定

  • 我用CodeIgniter和几个控制器构建了一个应用程序 除了在应用/配置/routes.php文件中设置为默认的控制器之外,所有控制器似乎都工作正常 我的. htaccess文件看起来像这样: 重写引擎在 RewriteBase/ RewriteCond%{REQUEST_FILENAME}上-重写cond%{REQUEST_FILENAME}-d 重写规则^(.*)$/索引。php/$1[L]

  • 问题内容: 我有一个index.php,它处理所有路由index.php?page = controller(简体)只是为了与视图分离逻辑。 我无法与Rewriterule一起使用。 控制器可能如下所示: 并且: 问题答案: 基本上人们想说的是,您可以像这样编写重写规则: 这将使您的实际php文件如下所示: 您的实际网址如下所示: 在您的PHP文件中,您可以通过如下分解方式来访问参数:

  • 问题内容: 我以前从未使用过CodeIgniter,更不用说任何php框架了,我想我可以试试看。一切正常,除了我似乎无法从URL中删除index.php并仍然访问我的页面。 我从未使用过MVC结构,因此我正在学习中,如果做错了,请原谅我。 我试图通过简单地键入 localhost / ci / about* 来访问我创建的名为“ about_page.php”的视图 , 但是目前我只能使用 loc

  • 我创建一个网站与CMS的简单版本1.11.11和我使用listit2模块版本1.4.1. 现在这个模块只能生成如下形式的URL: http://example.com/listit2/item-alias/page-id 现在,我不关心用于显示正确模板的页面标识,但由于这是一个多语言网站,我希望listit2在我的(虚拟)语言文件夹后面: http://example.com/lang/listi

  • 我希望你能帮忙。我试图写一个htaccess文件做以下事情。 1)重定向到www.地址 2) 从url中删除.php 3) 如果文件不存在,则使用filechecker.php?page=filename 1.我能忍受 RewriteCond%{HTTP_HOST}^example.com$ *)http://www.example.com/1美元[R=301, L] 2) 我受够了 Rewrit