我试图在我的网站上创建无扩展名网址并提出一些问题。希望有人可以帮助我。
以下是代码:
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]
无论是否添加,此代码都会添加尾部斜杠。有没有尾随斜线是否更好?或者重要吗?接下来的两个问题取决于问题#1的最佳选择。
在编写标记时,这是一种更好的写入方式吗? http://www.mysite.com/test
或http://www.mysite.com/test/
如果我在文件夹中有一个index.html文件"测试"和同一文件夹中的其他文件将使用该文件的非index.html文件上的尾部斜杠胜过其他所有文件?我假设它会。
提前感谢您的帮助。
答案 0 :(得分:2)
使用尾部斜杠。 http://www.searchenginejournal.com/linking-issues-why-a-trailing-slash-in-the-url-does-matter/13021/
所以你应该把网址写成www.mysite.com/test/
关于你的上一个问题。我个人会使用目录来摆脱拖尾斜杠。例如,对于您的示例url,我将创建一个目录test
并在该目录中添加一个index.html文件。然后将浏览器导航到http://www.mysite.com/test/会转到该页面。另一个好处是您可以在该目录中添加自定义.htaccess文件。
您是否因为我错过了重写规则而遇到特定问题?