2

我有以下 .htaccess 文件:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^mydomain.com
RewriteRule (.*) http://www.mydomain.com/$1 [R=301,L] 

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^mykeyword$ news.php [L,QSA,NC]

但是,当我打开 news.php 时,url 还是一样的,即 www.mydomain.com/news.php 而不是 www.mydomain.com/mykeyword

我进行以下测试:

RewriteEngine on 
RewriteRule ^test\.html$ test.php [L]

我在我的服务器上上传了 2 个文件 test.html 和 test.php,在我输入 www.mydomain.com/test.html 后,我的 php 页面显示出来了,这意味着我的设置没有问题。我到底做错了什么???

任何帮助将不胜感激。

问候,佐兰

4

2 回答 2

0

将您的 .htaccess 更改为此:

RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} ^(mydomain\.com)$ [NC]
RewriteRule ^(.*)$ http://www.%1/$1 [R=301,L] 

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+news\.php [NC]
RewriteRule ^ mykeyword [R=301,L]

RewriteRule ^mykeyword/?$ news.php [L,NC]
于 2012-05-20T15:32:17.230 回答
0

重写规则将用户提供的URL 转换服务器看到的 URL。尝试浏览 www.mydomain.com/mykeyword - 您应该会看到 news.php 页面。

于 2012-05-20T15:26:09.320 回答