Apache mod_重写,用户目录

Apache mod_重写,用户目录,apache,mod-rewrite,Apache,Mod Rewrite,我有学生,教师和管理部分的软件。我想让老师选择他们的网址,如http://mydomain.com/teacher1,http://mydomain.com/teacher2等 我怎么能用这个模版重写呢?这一部分正在发挥作用: RewriteEngine On RewriteRule username teacher/ 但是当我在教师目录中有一些链接时,比如teacher/training.phpbrowser在teacher/dir中打开index.php页面,而不是training.ph

我有学生,教师和管理部分的软件。我想让老师选择他们的网址,如
http://mydomain.com/teacher1
http://mydomain.com/teacher2

我怎么能用这个模版重写呢?这一部分正在发挥作用:

RewriteEngine On
RewriteRule username teacher/ 

但是当我在教师目录中有一些链接时,比如
teacher/training.php
browser在
teacher/dir
中打开
index.php
页面,而不是
training.php

mod u rewrite读取所有路径并对其进行修改。格式为:“重写规则模式替换”()

“Pattern”可以是子字符串,任何与该子字符串匹配的内容都将被重写,但“substitution”是完整路径

假设您希望“username”仅在开始时匹配,并且假设必须重写其下的所有位置,那么您需要的是:

RewriteEngine On
RewriteRule ^username(/(.*))? teacher$1

这将忽略“username”,但将路径的其余部分附加到末尾,因此
http://example.com/username/training.php
将显示的内容(但不会将地址更改为)
http://example.com/teacher/training.php
。如果您想让它执行完全重定向以更改URL,请在
重写规则
行的末尾添加
[R=301]

很抱歉,我真的不明白您的问题。你能解释一下你想要什么(=起始URL),它应该如何在服务器端内部重写,如果你有错误,请写下有问题的URL。你可能会得到更好的回复,因为他们专门处理这类事情。我投票决定移居那里。