我是这个modrewrite野兽的新手。我设法让它工作,我可以正常地将index.php加载为index.html,例如。
问题是当我尝试导航到index2.html时出现错误404错误,The requested URL /index2.php was not found on this server.
我的.htaccess中有这段代码:
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(.*)\.html$ $1.php [nc]
我尝试了一些东西,但我只是陷入了困境。
Basicaly我想要从PHP重写为HTML,但我想看到实际上是HTML的文件也是如此。
我的第二个问题,也许最重要的是,在搜索引擎优化方面有多好,它是否正常或使用这种重写规则有任何缺点?
答案 0 :(得分:3)
尝试为-f
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{REQUEST_URI} ^/(.*)\.html$
RewriteCond %{DOCUMENT_ROOT}/%1.php -f
RewriteRule ^(.*)\.html$ $1.php [nc]
这将检查以确保文件在重写之前作为php存在
关于你的第二个问题,无论是扩展名是html还是php,它都没有太大的区别。它主要是因为它看起来你正在提供静态内容。