将文件扩展名从 .htm 更改为 .php 的最佳方法是什么
我需要将网络服务器中的一些 htm 文件更改为 .php 文件。这些页面是从不同地方链接的。当有人尝试访问它们时,我不希望它们显示文件未找到错误。
例如,如果需要将index.htm更改为index.php,我可以
redirect 301 /index.html index.php
在htaccess文件中写入重定向吗?这是最好的方法吗?
谢谢普拉迪
i need to change some htm files in my webserver to .php files. These pages are linked from various places. i dont want them to show a file not found error when someone tries to access them.
For example if the index.htm needs to be changed to index.php can i write a redirect
redirect 301 /index.html index.php
in my htaccess file? Is this the best approach?
Thanks
Prady
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用 mod_rewrite。像这样的事情可能会起作用:
您可以使用正则表达式。看:
http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html
You could use the mod_rewrite. Something like this might work:
You can use regular expressions. See:
http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html
如果您通过 POST 发送数据,这将不起作用。除了重命名文件和重写链接之外的任何操作都是丑陋且临时的黑客行为。 FWIW,您可以通过将每个“页面”放在自己的目录中并引用 URL 中的目录并通过目录索引配置指定默认文件来避免这种情况。
您没有提到它运行在什么操作系统上 - 如果是 Linux/Unix/BSD 那么您可以使用 sed 来更改所有绝对链接(并使用 grep 来查找您可能需要手动编辑的相对链接) 。
类似....
This won't work if you are sending data via POST. Anything other than renaming the files and rewriting the links is an ugly and temporary hack. FWIW, you can avoid this by having each 'page' in its own directory and referencing the dir in the URL and specifying the default file via the directoryIndex config.
You didn't mention what OS this is running on - if its Linux/Unix/BSD then you could just use sed to change all the absolute links (and grep to find the relative ones which you'll probably need to edit by hand).
Something like....