regex - 搜索引擎友好网址的问题

标签 regex mod-rewrite seo

多年来,我一直在尝试重写我的网址,以便它们对 SEO 友好。这是迄今为止我在开发网站时遇到的最困难的任务,但仍然没有任何效果。

我的链接设置是这样的

<a href="view_portfolio.php?portid=<?php echo $row_portfolio['portid']; ?>" class="purpletoblacklink">Read On 

我的 htacess 设置是这样的

Options +FollowSymLinks
RewriteEngine On
RewriteRule /portid/(.*)$ /page/view_portfolio.php?portid=$1 

基本上遵循有关该主题的每个教程告诉开发人员要做的事情。

这是我第一次在任何论坛上发帖提问。

最佳答案

大多数 mod_rewrite 教程没有提到的一个重点是:mod_rewrite 重写请求而不是响应。

因此,如果您将 foobar.php 放入您的 HTML 文档中,您的浏览器将请求 foobar.php,即使您有重写 quux 请求的规则foobar.php 内部,因为 HTML 文档引用的是 foobar.php

在您的情况下,您已经需要提供链接到 /portid/... 的 HTML 文档:

<a href="/portid/<?php echo $row_portfolio['portid']; ?>" class="purpletoblacklink">Read On 

关于regex - 搜索引擎友好网址的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9096818/

相关文章:

apache - htaccess 中的 301 重定向具有参数 P 的 URL

html - 网页上正确的标题结构?

php - history.pushState 导航 - 元标签怎么样 - 单独的模板?

python - 正则表达式匹配任何字符或不匹配?

java - 正则表达式匹配中间出现 0 或 1 次 "."字符的数字

apache - 使用 htaccess 进行多域重定向

javascript - 获取实际输出 HTML 的函数

Mysql将列值视为选择的正则表达式

javascript - 正则表达式 - 匹配分隔符之间的每个逗号 NOT

regex - .htaccess 强制重定向 htaccess 中重写的 url 以使用 https ssl