【问题标题】:How to configure htaccess for non www domain?如何为非 www 域配置 htaccess?
【发布时间】:2017-12-09 10:14:56
【问题描述】:
我想配置 htaccess 文件。我使用没有 www 的域,而且我的域在搜索引擎 mydomain.com 中被索引,而不是 www.mydomain.com
当我去 www.mydomain.com 它不会重定向到 mydomain.com
我在 htaccess 文件中找到了该代码。这是对的吗?我应该添加什么?
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
【问题讨论】:
标签:
php
apache
.htaccess
redirect
【解决方案1】:
登录您的 cPanel
找到文件类别并单击文件管理器图标。
点击右上角的设置。
选择您正在使用的域的文档根目录,并确保选中显示隐藏文件旁边的复选框。单击保存按钮。
文件管理器显示隐藏
查找 .htaccess 文件并右键单击它。这会弹出一个菜单。找到并单击编辑选项。
文件管理器-htaccess
您现在在文本编辑器中。将选择的代码放入文件中,然后单击屏幕右上角的“保存更改”按钮。请务必将“example.com”替换为您的实际域名。注意:不要将两个代码选择都放在文件中,因为这会导致错误。
强制 www:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ https://example.com/ $1 [L,R=301,NC]
强制非www:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule ^(.*)$ https://example.com/ $1 [L,R=301]
现在,当您输入您的域名时,无论是否在前面加上 www,它都应该按照您在 .htaccess 文件中设置的方式显示。