我如何使用 .htaccess 指向与 url 栏中的目录不同的目录
How can i use .htaccess to point to a directory different from the one on the url bar
我一直在尝试使用 .htaccess 指向我网站用户的模板目录。
用户登录后指向的目录是mysite.com/lu/user1/ 而我要加载的内容在mysite.com/lu/default/
我想要实现的是从默认模板目录加载内容,以便我可以在必要时修改页面,它会反映在所有用户帐户页面上。
整件事就是说:当用户在 mysite 中时。com/lu/user1/ 让 mysite 中的内容。com/lu/default/ 提供给不在 mysite 中的用户。com/lu/default/显示在 url 栏上。如果用户在 mysite.com/lu/user1/settings/ 或 mysite.com/lu/user1/settings/?rw=yyy&uui=uuu 让服务目录成为 mysite.com/lu/default/settings/ 或 mysite .com/lu/default/settings/?rw=yyy&uui=uuu
我也不希望用户直接访问模板目录,例如 mysite。com/lu/default/
此代码已发布给我,但我不知道 htaccess 语法
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/(index|excluded1|excluded2)\.php [NC]
RewriteRule ^((?!u/).+)$ u/ [L,NC]
感谢您的光临。
您应该能够重写到 default
目录。你可以试试这条规则。
RewriteEngine On
RewriteBase /
#redirect to the home page if they request direct default directory
RewriteCond %{THE_REQUEST} {A-Z}{3,}\ /lu/default/?([^&\ ]*)
RewriteRule ^ / [R=301,L]
#internally rewrite to the default directory QSA flag will send any query string attached.
RewriteRule ^lu/(?!default)([^/]+)/?(.*?)/?$ /lu/default// [L,QSA]
您可以在 /lu/
目录中使用此 .htaccess:
RewriteEngine On
RewriteBase /lu/
# block direct access to /lu/default
RewriteCond %{THE_REQUEST} /lu/default [NC]
RewriteRule ^ - [F]
RewriteRule ^([A-Z0-9]{6})/?$ profile.php?cod= [L,QSA]
# route every user/* to default/*
RewriteRule ^\w+/(.*)$ default/ [L,NC]
我一直在尝试使用 .htaccess 指向我网站用户的模板目录。
用户登录后指向的目录是mysite.com/lu/user1/ 而我要加载的内容在mysite.com/lu/default/
我想要实现的是从默认模板目录加载内容,以便我可以在必要时修改页面,它会反映在所有用户帐户页面上。
整件事就是说:当用户在 mysite 中时。com/lu/user1/ 让 mysite 中的内容。com/lu/default/ 提供给不在 mysite 中的用户。com/lu/default/显示在 url 栏上。如果用户在 mysite.com/lu/user1/settings/ 或 mysite.com/lu/user1/settings/?rw=yyy&uui=uuu 让服务目录成为 mysite.com/lu/default/settings/ 或 mysite .com/lu/default/settings/?rw=yyy&uui=uuu
我也不希望用户直接访问模板目录,例如 mysite。com/lu/default/
此代码已发布给我,但我不知道 htaccess 语法
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/(index|excluded1|excluded2)\.php [NC]
RewriteRule ^((?!u/).+)$ u/ [L,NC]
感谢您的光临。
您应该能够重写到 default
目录。你可以试试这条规则。
RewriteEngine On
RewriteBase /
#redirect to the home page if they request direct default directory
RewriteCond %{THE_REQUEST} {A-Z}{3,}\ /lu/default/?([^&\ ]*)
RewriteRule ^ / [R=301,L]
#internally rewrite to the default directory QSA flag will send any query string attached.
RewriteRule ^lu/(?!default)([^/]+)/?(.*?)/?$ /lu/default// [L,QSA]
您可以在 /lu/
目录中使用此 .htaccess:
RewriteEngine On
RewriteBase /lu/
# block direct access to /lu/default
RewriteCond %{THE_REQUEST} /lu/default [NC]
RewriteRule ^ - [F]
RewriteRule ^([A-Z0-9]{6})/?$ profile.php?cod= [L,QSA]
# route every user/* to default/*
RewriteRule ^\w+/(.*)$ default/ [L,NC]