为了将我的动态网址(即www.3idiots.co.in/index.php)转换为静态网址即www.3idiots.co.in/index.html,我编辑了我的.htccess文件并将以下代码放入它:
RewriteEngine On
RewriteRule ^index.php$ /index.html [R]
当我在根目录中上传此文件并尝试打开该页面时,我收到了错误
未找到404页错误,未找到www.3idiots.co.in/index.html。
答案 0 :(得分:1)
你必须有一个名为index.html的文件。现在你没有。重写/重定向工作正常,您只是重定向到不存在的页面/文件。
我对你真正要做的事情感到有点困惑。如果您只想将index.php移动到index.html,请重命名该文件。重写使得如果有人试图打开index.php,它们将被重定向到index.html,但你仍然必须有一个index.html文件,以便将它们重定向到到。
答案 1 :(得分:0)
RewriteEngine On
# Send the user to index.html
RewriteRule ^index.php$ /index.html [R]
# Tell the server that index.html really means index.php
RewriteRule ^index.html$ /index.php
答案 2 :(得分:0)
请尝试以下规则:
RewriteCond %{THE_REQUEST} ^GET\ /index\.php
RewriteRule ^index\.php$ /index.html [L,R=301]
RewriteRule ^index\.html$ index.php [L]
第一条规则将/index.php
的每个直接请求重定向到/index.html
。第二条规则将/index.html
内部请求重写为/index.php
。
答案 3 :(得分:0)
你确定mod重写已启用&工作
1)创建一个名为found.html的html页面,其中包含你想要的任何内容,但有些文本确定它已加载(基本上不是空白页面)并将其放在名为“.htaccess”的文件中:
重写发动机
RewriteBase /
RewriteRule ^ find.html $ /found.html [L]
2)将.htaccess和found.html文件上传到您网域的根目录
3)只需尝试加载-www.example.com/find.html(当然还有您的真实域名)。如果mod_rewrite可用,你应该在浏览find.html时看到found.html的内容(顺便说一下,它实际上并不存在)。
如果不起作用,请尝试:
重写发动机
RewriteBase /
RewriteRule ^ find.html $ found.html [L]
答案 4 :(得分:0)
在Apache Conf文件中,您还需要确保将AllowOverride设置为允许处理.htaccess的值。
通常是AllowOverride all
答案 5 :(得分:0)
RewriteEngine On
RewriteRule ^ index.html $ index.php
RewriteRule ^ $ index.htm / $ index.php [L]
答案 6 :(得分:0)
选项+ FollowSymLinks
重写引擎
RewriteRule ^ index.html $ index.php
试试这段代码......
它适用于您的问题/.../ p>
Best Of LUck
如果它解决了你的问题..
访问我的网站