我刚删除了网页上文件的.php扩展名,将此代码添加到我的.htaccess文件中(当我第一次打开文件时,第一行已存在):
AddHandler application/x-httpd-php71 .php .php5 .php4 .php3
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php
</IfModule>
事实是,现在我可以通过misite.com/shop和misite.com/shop.php访问我的网站
这是否会影响我的页面搜索引擎优化,因为可以通过两种不同的方式访问同一页面,或者这不会意味着任何问题?
我想改变的另一件事是当我点击我的索引网站时,它显示为mysite.com/index(现在我已经删除了.php扩展名)。我怎么能这样做它只显示“mysite.com”而没有“/ index”?
答案 0 :(得分:3)
以下代码可帮助您移除.php
扩展并将其重定向为.php
格式:
## hide .php extension snippet
# To externally redirect /dir/foo.php to /dir/foo
RewriteCond %{THE_REQUEST} \s([^.]+)\.php [NC]
RewriteRule ^ %1 [R,L]
# To internally forward /dir/foo to /dir/foo.php
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ $1.php [L]
这是您处理SEO相关问题的元代码。使用rel="canonical"
,用于让搜索引擎知道该网页的原始网址。以下是您的示例,它会让机器人知道网址http://example.com/是http://example.com/index的实际网址
<link rel="canonical" href="http://example.com/" />
在锚文本中,<a href="./">Home</a>
代替<a href="index.php">Home</a>
我希望这个答案能为你做到。