这让我开始香蕉。出于某种原因,我的域名无法将https-WWW重定向到https-non-WWW。这适用于除https://www.nextoronto.com
之外的所有其他排列我在.htaccess中使用哪些代码才能使其适用于所有排列?
编辑:这是现在的重写代码:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.nextoronto\.com [NC]
RewriteRule ^(.*)$ https://nextoronto.com/$1 [L,R=301]
答案 0 :(得分:1)
它看起来很合理,或许由于其前面的其他规则而未达到规则?
以下是我使用的方法:
# Force SSL
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://nextoronto.com/$1 [R=301,L]
# Redirect www to non-www
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^(.*)$ https://nextoronto.com/$1 [R=301,L]
# My other rewrites for routing all requests to index.php go here...
答案 1 :(得分:0)
修改网址并尝试使用以下代码:
RewriteEngine on
rewritecond %{http_host} ^www\.example\.com [nc]
rewriteCond %{SERVER_PORT} 80
rewriterule ^(.*)$ https://example.com/$1 [r=301,nc]
答案 2 :(得分:0)
第1步
你应该像这样制作.htaccess文件
RewriteEngine On
RewriteCond%{REQUEST_FILENAME}!-d
RewriteCond%{REQUEST_FILENAME}!-f
RewriteRule ^(。*)$ index.php?url = $ 1
第2步
转到目录,然后查看标记选项文件扩展名。然后查看.htaccess文件。
答案 3 :(得分:0)
您应该在.htaccess文件中尝试此操作
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
答案 4 :(得分:0)
如果没有重写的方法,无论您做什么,都请考虑发生在我身上的事情。在我的笔记本电脑上,IIS或WAMP将所有对我的域的调用(称为example.com)重定向到localhost。因此,在example.com服务器上创建所有重写均无济于事,因为没有对example.com的调用使它从计算机中删除。只需执行“ ping example.com”,如果IP为127.0.0.1,请编辑HOSTS文件。