我想使用 .htaccess 重写一些 url
我有这样的网址:
domain.com/app/index.php/appmedia/default/login
并想将用户重写为
domain.com/app/index.php/zurmo/default/login
因此,用户将在浏览器中看到 appmedia,但在后端将访问 zurmo
我是 php 新手,读过一些博客,例如 this运气不好
这个也试过
RewriteEngine On
RewriteRule ^app/index.php/appmedia/default/login.*$ http://domain.com/app/index.php/zurmo/default/login [R=301,L]
它说页面没有正确重定向
.htaccess 文件的编辑
RewriteEngine On
RewriteRule ^app/index.php/appmedia/default/login.*$ http://mydomainx.com/app/index.php/zurmo/default/login [R=301,L]
最佳答案
您不能使用 [R=301]
并期望 URL 不变。 R 表示重定向。因此它将更改为您告诉它的 URL。对于内部重写,您需要将其关闭。
如果您的文档根目录中有 .htaccess,那么您应该能够执行此操作。我不知道您的设置如何,但这应该重写 URI。
Options -Multiviews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^app/index.php/appmedia/default/login/?$ /app/index.php/zurmo/default/login [L]
如果您使用的是 yii 框架,请执行以下操作:
'urlManager' => array (
'class' => 'application.core.components.ZurmoUrlManager',
'urlFormat' => 'path',
'caseSensitive' => true,
'showScriptName' => true,
'rules' => array(
// Begin Not Coding Standard
// API REST patterns
array('zurmo/default/login','pattern' => 'appmedia/default/login',
关于Php通过.htaccess重写url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29255578/