.htaccess mod_rewrite重定向而不是重写URL
大家好, 我有一个HTACCESS文件,其中包含以下内容:.htaccess mod_rewrite重定向而不是重写URL,.htaccess,mod-rewrite,hosting,.htaccess,Mod Rewrite,Hosting,大家好, 我有一个HTACCESS文件,其中包含以下内容: Options +FollowSymlinks RewriteEngine on RewriteRule ^(.*)$ http://mydomain.com/public/$1 RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d 代码的目的是,当用户
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(.*)$ http://mydomain.com/public/$1
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
代码的目的是,当用户键入我的域名“mydomain.com”时,它不会调用mydomain.com/index.php,而是调用mydomain.com/public/index.php,而用户不会注意到重定向(或内部重定向)
我在某个网站上得到了代码,它在我的本地机器(WAMP堆栈)上运行。
问题是,当我现在将其传输到共享主机服务器时,会发生外部重定向而不是内部重定向。例如:
然后在地址栏中键入mydomain.com将是mydomain.com/public
我已经检查了主机服务器的配置,是的
- HTACCESS已启用
- mod_重写已启用
- 我可以使用HTACCESS文件修改PHP设置
我所有的重写不仅重定向在本地计算机上运行良好的代码。摆脱
http://mydomain.com
在规则的目标中。它告诉重写引擎重定向,而不是内部重写。我会试试,但您能解释一下为什么重定向不会在我的机器上发生吗?e、 i.使用本地主机?谢谢@eGzg0t不知道为什么,它应该总是重定向时,你有。你确定这是apache的同一个版本吗?不,它们不同,我的更新了…我不确定托管站点的版本,但确定它接近最新版本。就是这样。但这很奇怪。无论如何谢谢你!