[英]Working with .HTaccess for url redirects and rewrites
一段时间以来,我一直在研究使用.htaccess
,以使网站上的URL更加用户友好。
但是,在浏览了互联网上无穷无尽的信息流之后,我似乎找不到一种用简单的英文解释命令的工作方式来进行以下操作的方法。
我的托管服务提供商的技术支持团队建议我咨询专业的Web开发人员,因此我认为这里是一个很好的咨询场所。 但是,如果它在错误的网站上,我向您致歉。
我认为拥有代码和解释将帮助那些希望获得类似结果的人更快地到达那里,而不是四处乱逛和感到困惑。
为了明确起见,由于我有某些目标,因此我希望在.htaccess
文件中执行以下操作:
我想尽量减少行数,以使其他人可以更轻松地在自己的网站中迁移和使用。
在此先感谢您的帮助,非常感谢。
要删除文件扩展名html
和shtml
,可以使用以下命令:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^(.*)/$ $1.html [NC,L]
RewriteCond %{REQUEST_FILENAME}.shtml -f
RewriteRule ^(.*)/$ $1.shtml [NC,L]
这些是采取的步骤:
<request_uri>.html
或<request_uri>.html
存在。 如果是这样,请在内部将<request_uri>/
(如您所指定的末尾加正斜杠)重写为现有文件。 如果要使尾随斜杠为可选,则可以将表达式从^(.*)/$
更改为^(.*)/?$
(添加问号使其成为可选)。
为您提供解决方案
要删除扩展名,请使用:
RewriteRule ^([^\.]+)$ $1.html [NC,L]
要应用.shtml,请使用:
RewriteRule ^([^\.]+)$ $1.shtml [NC,L]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.