我在MySQL数据库中有内容,我想在我的主页上显示,具体取决于用户来自的URL。我不希望mod_rewrite更改我的URL,而是要执行以下操作:
mysite.com/demolink2
)index.php
,传递“demolink2”变量(基本上是最后一个斜杠后面的URL字符串末尾)index.php
方面我将能够提供内容,但同样,我不希望用户将网址更改为mysite.com/index.php?id=demolink2
,而是让mysite.com/index.php
页面保持mysite.com/demolink2
,直到他们点击网站中指向真实网页的网址。这是我当前的.htaccess,它完成了第一位;即,它将查看该页面是否已经存在,如果没有,则将用户引导至索引,但是我已经完成了重写。
任何帮助/评论都将不胜感激。
htaccess文件:
Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteRule ^$ /index.php [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) /index.php [L]
答案 0 :(得分:0)
只需将最后一行更改为
即可RewriteRule (.*) /index.php?id=$1 [QSA,L]
浏览器中的URL将保持与重写(内部重定向)相同,而不是正确的3xx代码重定向。
mysite.com/demolink2
,您的脚本会将其视为/index.php?id=demolink2
; mysite.com/hello/kitten
,则脚本会看到index.php?id=hello/kitten
; QSA
标志以保留现有查询字符串。