我尝试使用以下代码将新的.htaccess文件添加到Drupal站点的根目录:
# Redirect all users to access the site WITH the 'www.' prefix
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} !\.([a-z-]+\.[a-z]{2,6})$ [NC]
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
但现在我在每个不是主页的页面上都出现此错误。请帮忙!所以如果我去www.website.com/products,我会得到这个:
Not Found
The requested URL /products was not found on this server.
Apache/2.4.7 (Ubuntu) Server at www.website.com Port 443
这是“Not Found”与上面的.htaccess代码有关吗?
答案 0 :(得分:0)
端口443通常用于HTTPS。处理这种情况的最佳方法是使用vhosts。使用vhost路由,您可以尝试类似:
<VirtualHost *:80>
ServerName www.example.com
Redirect "/" "https://www.example.com/"
</VirtualHost>
<VirtualHost *:443>
ServerName www.example.com
# ... SSL configuration goes here
</VirtualHost>
走上.htaccess路线,你可能想尝试这样的事情:
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\.example\.com*
RewriteRule ^(.*)$ https://example.com/$1 [L,R=301]
答案 1 :(得分:0)
好的,所以我发现这里的问题是我上传了一个.htaccess
文件并且没有看到那个已存在的文件,因为该文件是 隐藏 < / strong>在服务器上,所以我实际上不小心覆盖了那里错误的Drupal .htaccess
文件。一旦我们恢复到原始df[!duplicated(unique(df[, 1:2])[, 1]), ]
文件并将此代码添加到其中,一切正常。