我在http://www.ssdpsjal.tk实施了一个新的.htaccess文件 我的代码是 -
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ n/index.php/$1 [L]
RewriteRule ^$ /index [L]
Redirect /administrator /sadmin1
我使用CodeIgniter。您可以访问该网站查看错误。
此外,我在我的本地服务器上尝试了这个.htacccess,并且它没有显示任何此类错误(我认为)
我的文档结构如下
--- ssdpsjal.tk //given by host. Non-writable
--n //the folder where website is stored
--web_based_editor //something my website uses
--.htaccess file //Htaccess file that I told about
--Some other stuff not relevent to the question
修改
我已多次更改代码,经过一些更改,我发现错误发生在RewriteRule ^(.*)$ n/index.php/$1 [L]
注意
index
RewriteRule ^$ /index [L]
不是Index.php它实际上是我的codeigniter控制器的函数(方法)
没有.htaccess的实际网址是http://www.ssdpsjal.tk/n/index.php/s/index
注意句子最后一句index
,就是那个!
答案 0 :(得分:0)
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^administrator /sadmin1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>
或只是改变这一行:
RewriteRule ^(.*)$ n/index.php/$1 [L]
进入:
RewriteRule ^$ n/index.php [L]
答案 1 :(得分:0)
我不确定你的配置,但你确定mod_rewrite存在吗?
也许:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) http://www.ssdpsjal.tk/$1 [R=301,L]
RewriteRule ^$ n/index.php [L]
Redirect /administrator /sadmin1
</IfModule>
答案 2 :(得分:0)
找到了我自己的问题的答案。
.htaccess文件完全正确。问题出在webhost上。他们正在更新他们的服务而没有任何警告(通知在5-6小时后发生),因为许多服务被关闭。
好吧,我把我的Webhost改成了一个更好的新主机。 (000WebHost)