我在谷歌和StackOverflow周围挖掘高低,试图找出我的问题,尝试无数的解决方案,但没有任何完全有效.
我想将服务器上主域的Web根目录移动到子目录.我目前用于Web根目录的服务器路径:
/home/user/public_html/MyWebFilesHere
Run Code Online (Sandbox Code Playgroud)
我想要的是:
/home/user/public_html/subdir/MyWebfilesHere
Run Code Online (Sandbox Code Playgroud)
当我浏览到mydomain.com时,应该没有明显的区别(即重定向后"subdir"不可见).
不幸的是,由于我在共享主机上并且无法访问Apache配置文件等,因此我仅限于使用.htaccess文件执行此操作.:(
我目前在public_html中的.htaccess中拥有的是:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?mydomain\.com$
RewriteCond %{REQUEST_URI} !^/subdir/
RewriteRule ^(.*)$ /subdir/$1 [L]
Run Code Online (Sandbox Code Playgroud)
这成功地将所有查询重定向到子目录,但是这是一个非常奇怪的问题.如果我去
mydomain.com/Contact/
Run Code Online (Sandbox Code Playgroud)
它工作得很好,将查询重定向到路径/ subdir/Contact /但只留下地址栏.如果我去
mydomain.com/Contact
Run Code Online (Sandbox Code Playgroud)
(注意缺少尾随'/'),地址栏中显示的是
mydomain.com/subdir/Contact/
Run Code Online (Sandbox Code Playgroud)
因为"subdir"显示,这不是我想要的.
有关我实际网站上的工作示例,请尝试浏览
colincwilliams.com/Contact/
Run Code Online (Sandbox Code Playgroud)
和....相比
colincwilliams.com/Contact
Run Code Online (Sandbox Code Playgroud)
你们有没有关于如何使用和不使用尾部斜线进行静默工作的想法?