我整天都在努力工作,并希望别人可以帮助我,帮助我。
我正在构建一个新网站(在我们的开发服务器上),并且我在使用一些简单的SEO友好网址时遇到了问题。
我只是将一些SEO友好关键字重定向到静态PHP页面。我的文件适用于大多数链接,但有2个因未知原因而中断。
这是我的档案:
Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteRule ^about-us$ aboutus.php [L]
RewriteRule ^resource-center$ resourcecenter.php [L]
RewriteRule ^our-services$ ourservices.php [L]
RewriteRule ^management-solutions$ ms.php [L]
RewriteRule ^additional-services$ additionalservices.php [L]
RewriteRule ^contact-us$ contactus.php [L]
出于某种原因,资源中心和联系我们将进入404页面。单击链接时,会向联系我们和资源中心添加尾部斜杠,但不会添加任何其他链接。
如果我编辑htaccess文件并将^ resource-center $更改为^ resourcecenter $,它将正常工作。如果我将其更改为^ resource-center / $以考虑添加的尾部斜杠,则会加载页面,但不会加载任何CSS / JS / Images。
我被困在这里,特别是因为它似乎很不协调。所有文件都存在,没有干扰的htaccess文件,HTML中或htaccess中的所有链接都以相同的方式格式化,但其中2个每次都给我错误。
如果有人可以帮助我,我们将不胜感激。
答案 0 :(得分:1)
MultiViews
选项试试这段代码:
Options +FollowSymLinks -MultiViews
RewriteEngine on
RewriteBase /
RewriteRule ^about-us/?$ aboutus.php [L,NC]
RewriteRule ^resource-center/?$ resourcecenter.php [L,NC]
RewriteRule ^our-services/?$ ourservices.php [L,NC]
RewriteRule ^management-solutions/?$ ms.php [L,NC]
RewriteRule ^additional-services/?$ additionalservices.php [L,NC]
RewriteRule ^contact-us/?$ contactus.php [L,NC]
对于css / js等,您可以在页面的HTML标题中添加:
<base href="/" />
以便从/
解析每个相对网址,而不是从当前网页的网址解析。