首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel 4 htaccess用301重写规则

Laravel 4 htaccess用301重写规则
EN

Stack Overflow用户
提问于 2014-01-09 11:20:54
回答 1查看 781关注 0票数 1

我有以下问题:

我的网站有两个域名:

www.user.tucana.uberspace.de和www.my-domain.de

如何创建一个有效的301从www.user.tucana.uberspace.de重定向到www.my-domain.de?我的意思是,如果用户通过www.user.tucana.uberspace.de/ mean /news进入我的网站,我希望我的htaccess将重定向到www.my-domain.de/mean/news.

在我的htacces中,我创建了以下代码:

代码语言:javascript
复制
 Options -MultiViews     RewriteEngine On
代码语言:javascript
复制
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

RewriteBase /
RewriteCond %{HTTP_HOST} !=www.my-domain.de
RewriteRule (.*) http://www.my-domain.de/$1 [R=301,L]

但问题是..。如果用户进入网站www.user.tucana.uberspace.de/ will /news,他将被重定向到www.my-domain.de/index.php/will/news。

此代码将工作,但不适用于根URL:

代码语言:javascript
复制
 Options -MultiViews     RewriteEngine On
代码语言:javascript
复制
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} !=www.my-domain.de [NC]
RewriteRule ^ http://www.my-domain.de%{REQUEST_URI} [R=301,L,NE]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

如果我使用上面的代码,URL www.user.tucana.uberspace.de / will /news将更改为www.my-domain.de/www.user.tucana.uberspace.de--这是正确的,但是如果我键入,该URL将更改为www.my-domain.de/index.php .为什么:-?那么,如何避免url中的index.php呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-09 11:26:48

你可以这样遵守你的规则:

代码语言:javascript
复制
Options -MultiViews

RewriteEngine On

# remove index.php
RewriteCond %{THE_REQUEST} /index\.php [NC]
RewriteRule ^(.*?)index\.php$ /$1 [L,R=302,NC,NE]

RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} !^www\.my-domain\.de$ [NC]
RewriteRule ^ http://www.my-domain.de%{REQUEST_URI} [R=301,L,NE]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

还可以在新浏览器中进行测试,以避免301缓存。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21018763

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档