简体   繁体   English

将动态URL重定向和重写为静态SEO友好URL

[英]Redirecting and rewriting a dynamic URL to static SEO friendly URL

I am having some trouble rewriting and redirecting my URLs. 我在重写和重定向URL时遇到麻烦。 This is what I am trying to do: 这就是我想要做的:

Currently I have this URL: domain.com/server.php?id=$1 目前,我有以下URL: domain.com/server.php?id=$1

I have that URL above which rewrites to: domain.com/details/$1 我上面的URL重写为: domain.com/details/$1

The problem I am having is when you go to: domain.com/server.php?id=$1 it doesn't redirect to my SEO friendly URL. 我遇到的问题是当您转到: domain.com/server.php?id=$1它不会重定向到我的SEO友好URL。

Does anyone know why? 有人知道为什么吗?

This is my current rewrite for the url: RewriteRule ^details/(.*)/ server?id=$1 [L] 这是我当前对url的重写: RewriteRule ^details/(.*)/ server?id=$1 [L]

Use this: 用这个:

RewriteEngine On
RewriteRule ^details/([^/]*)$ /server.php?id=$1 [L]

It will give you the URL: domain.com/details/$1 . 它将为您提供URL: domain.com/details/$1 Just make sure you clear your cache before testing it. 只需确保在测试之前清除缓存即可。

This is my what I found to work for me: # external redirect from actual URL to pretty one RewriteCond %{THE_REQUEST} \\s/+server\\.php\\?id=([^\\s&]+) [NC] RewriteRule ^ details/%1? [R=301,L,NE] 这是我发现对我# external redirect from actual URL to pretty one RewriteCond %{THE_REQUEST} \\s/+server\\.php\\?id=([^\\s&]+) [NC] RewriteRule ^ details/%1? [R=301,L,NE]东西: # external redirect from actual URL to pretty one RewriteCond %{THE_REQUEST} \\s/+server\\.php\\?id=([^\\s&]+) [NC] RewriteRule ^ details/%1? [R=301,L,NE] # external redirect from actual URL to pretty one RewriteCond %{THE_REQUEST} \\s/+server\\.php\\?id=([^\\s&]+) [NC] RewriteRule ^ details/%1? [R=301,L,NE]

# internal forward from pretty URL to actual one RewriteRule ^details/([^/.]+)/?$ server.php?id=$1 [L,QSA,NC]

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM