【问题标题】:PHP Website Converted to Static HTML site - Linking IssuePHP 网站转换为静态 HTML 网站 - 链接问题
【发布时间】:2011-12-16 18:31:44
【问题描述】:

我有一个动态 PHP 网站,我需要将其转换为静态网站以提供给客户。我使用 wget 来提取文件,它完全符合我的需要。唯一的问题是..我之前的链接(谷歌索引的链接)没有文件扩展名。我使用 .htaccess 摆脱了 .php 文件扩展名。

所以我的一个 URL 看起来像这样: http://www.domain.com/about/

当我获得网站的静态版本时,它会将我的所有链接都更改为 .html

这可能很好,因为我可以使用 htaccess 摆脱该文件扩展名,因此我的所有链接都将与以前相同。好吧,每个页面中的所有内部链接都链接到 .html 版本。

如果用户访问 about.html,htaccess 有没有办法直接引导用户,它会在没有扩展名的情况下将他们带到 about?所以我所有的内部链接仍然有效吗?

或者你们对如何处理这个问题还有其他建议吗?

这是我使用的 wget 代码:

wget -k -K  -E -r -l 10 -p -N -F -nH http://www.domain.com/

我怎样才能让它输出 .php 文件而不是 .html?

谢谢!

【问题讨论】:

    标签: php html .htaccess dynamic static


    【解决方案1】:

    您可以将其添加到您的 .htaccess 中:

    RewriteRule ^([^\.]+)$ $1.html [NC,L]
    

    取自:http://www.sicanstudios.com/how-to-remove-php-html-htm-extensions-with-htaccess/

    【讨论】:

    • 太棒了,谢谢。那可行。不过,一个简单的问题,我有两种形式需要是 .php 而不是 .html。你知道如何使用 Wget 吗?我需要将所有文件输出为 .php 而不是 .html - 我用我使用的代码更新了我的问题。
    • 好吧,您使用的是-E 标志,它是--html-extension 标志的别名,这就是为什么它将文件名更改为.html。如果您删除它,它应该保留扩展名。但是,您不会使用 wget 获得 php 代码,那么为什么需要 .php 扩展名?
    • 所以我可以手动将 PHP sn-p 添加到我需要的两个页面中,并且它们已经具有 .php 扩展名,因此我不必更改所有通过其他页面的链接。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 2015-07-15
    • 1970-01-01
    • 1970-01-01
    • 2011-12-26
    • 2020-10-08
    相关资源
    最近更新 更多