我正在尝试在我的网站上创建无扩展名的网址,但有几个问题。希望有人可以帮助我。
这是代码:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/$ $1.html
RewriteRule ^([^/]+)/([^/]+)/$ /$1/$2.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule (.*)$ /$1/ [R=301,L]
无论您是否添加,此代码都会添加尾部斜杠。有尾部斜杠还是没有尾部斜杠更好?或者这有关系吗?接下来的 2 个问题取决于问题 #1 的最佳选项是什么。
在编写标记时,哪种编写方式更好?
http://www.mysite.com/test
或http://www.mysite.com/test/
如果我在“Test”文件夹中有一个index.html 文件,并且同一文件夹中有其他文件,那么包含该文件的非index.html 文件上的尾部斜杠是否会胜过所有其他文件?我想会的。
预先感谢您的帮助。
最佳答案
使用尾部斜杠。 http://www.searchenginejournal.com/linking-issues-why-a-trailing-slash-in-the-url-does-matter/13021/
所以你应该把url写成www.mysite.com/test/
关于你的最后一个问题。我个人会使用目录来去掉尾部斜杠。例如,对于您的示例网址,我将创建一个目录 test
并在该目录中添加一个 index.html 文件。然后将浏览器导航到 http://www.mysite.com/test/会带你到那个页面。另一个好处是您可以在该目录中添加自定义 .htaccess 文件。
您的重写规则是否存在我错过的特定问题?
关于html - 如何使用如下所示的 htaccess 文件创建无扩展名 url?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9526186/