我正在将一个PHP站点从本地托管的IIS6服务器移动到Pagoda Box。这个站点以前是用Coldfusion编写的,最近我用PHP重新编写了它。对于谷歌分析,我已经将所有面向外部的链接设置为无扩展,同时提供相应的serving .php文件:
<a href="link">My Link</a>请求:
/link浏览器栏:
http://www.example.com/link响应:
/link.php我之前一直在使用Ionic Shade IIRF重写滤镜,现在显然将使用htaccess。我之前的IIRF规则是这样的:
RedirectRule ^/([A-Za-z0-9_\-]+)\.cfm((\?.*)|())$ /$1$2 [R=301]
RewriteRule ^/([A-Za-z0-9_\-]+)((\?.*)|())$ /$1.php$2因此,在我的htaccess文件中,我尝试了:
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^example\.pagodabox\.com [NC]
RewriteRule ^([A-Za-z0-9_\-]+)((\?.*)|())$ $1.php$2 [R=301,L]我的无扩展名链接使用任何查询字符串提供正确的.php文件。但是,您会在浏览器栏中看到.php扩展。如何修改htaccess文件才能像以前的IIRF规则一样工作?
发布于 2013-04-14 00:09:31
您必须删除R=301标志。
此标志使web服务器向浏览器发送Location响应,并强制浏览器请求新的URL。
https://stackoverflow.com/questions/15989490
复制相似问题