.htaccess htaccess文件-根目录和网站文件夹htaccess文件都有不同的代码,URL没有www不起作用

jq6vz3qz  于 2023-10-23  发布在  其他
关注(0)|答案(1)|浏览(111)

我有下面的域,没有www不工作。
www.mydomain.com工程
mydomain.com =不工作
根htaccess文件(主域是其他的东西)似乎自动包含了这段代码。

# php -- END cPanel-generated handler, do not edit
RewriteCond %{HTTP_HOST} ^mydomain\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.mydomain\.com$
RewriteRule ^/?$ "https\:\/\/www\.mydomain\.io\/mydomain" [R=301,L]

我在网站的htaccess文件中添加了这段代码。

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

我做错了什么?
目前mydomain.com去的东西很奇怪(它重复的域名):并有一个错误

https://www.example.com/example.com/

页面错误

Not Found
The requested URL was not found on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

我可以删除写着“不要编辑”的代码吗?哪一个是有效的,为什么/如何?

1l5u6lss

1l5u6lss1#

通过以下方式基本解决了问题:
1.添加重写引擎规则:
RewriteCond %{HTTP_HOST}上的RewriteEngine!^www. RewriteRule ^(.*)$http://www. %{HTTP_HOST}/$1 [R=301,L]
1.删除DNS管理控制台中的转发,只保留addondomains部分中的转发。因此,在cpanel - addon域中,创建转发并删除DNS部分中的转发。这是关键部分。
1.在此域的public_html之外还有一个附加文件夹,该文件夹也已删除。
最后,添加这些规则来强制https是有用的:
https://www.hostinger.co.uk/tutorials/ssl/forcing-https
还注意到有用的评论:“您正在使用哪个Web服务器?查看您的Web服务器配置文件。您的问题是您有一个从HTTP到HTTPS的重定向,并且路径URL配置错误。”

相关问题