Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html Can';t使用301和.htacces重定向_Html_Css_.htaccess_Redirect_Url Redirection - Fatal编程技术网

Html Can';t使用301和.htacces重定向

Html Can';t使用301和.htacces重定向,html,css,.htaccess,redirect,url-redirection,Html,Css,.htaccess,Redirect,Url Redirection,我刚刚开始学习CSS和HTML 我从HostGator买了一个域名来上传我的小网站 我用CyberDuck上传我所有的东西 然后我发现了一个叫做.htacces的东西,我在WWW文件夹中没有它,我试着“制作”了一个 然后我用Nibbler测试了这个站点,它一直说“有重复的内容”,我应该这样做:“选择一个你想使用的域,然后设置一个永久(HTTP 301)重定向,转发访问另一个域的用户。” 我发现了很多重写和重定向,但我无法使它们中的任何一个正常工作 我需要写些什么来避免一个“重复”的站点(或者解决

我刚刚开始学习CSS和HTML

我从HostGator买了一个域名来上传我的小网站

我用CyberDuck上传我所有的东西

然后我发现了一个叫做.htacces的东西,我在WWW文件夹中没有它,我试着“制作”了一个

然后我用Nibbler测试了这个站点,它一直说“有重复的内容”,我应该这样做:“选择一个你想使用的域,然后设置一个永久(HTTP 301)重定向,转发访问另一个域的用户。”

我发现了很多重写和重定向,但我无法使它们中的任何一个正常工作

我需要写些什么来避免一个“重复”的站点(或者解决规范的网址(我想这就是它的名称))

假设我的站点名为:并且我希望所有“FirstSite”搜索都转到或FirstSite.net,但仍然是https

我用s写https是因为我想让网站更安全(如果可能的话)

我一直在修改gator的cPanel中的.htacces,我正在使用Google Chrome

谢谢你阅读这份手稿

这就是我复制粘贴到其中的全部内容(我忘记了那些没有a的人会做什么(最后两段)):

#主要默认值
选项+执行CGI-索引
DirectoryIndex.html
美国的违约语言
AddDefaultCharset UTF-8
服务器签名关闭
#压缩文本、HTML、JavaScript、CSS和XML
AddOutputFilterByType泄气文本/普通
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE应用程序/xml
AddOutputFilterByType DEFLATE应用程序/xhtml+xml
AddOutputFilterByType DEFLATE应用程序/rss+xml
AddOutputFilterByType DEFLATE应用程序/javascript
AddOutputFilterByType DEFLATE应用程序/x-javascript
#删除浏览器错误
浏览器匹配^Mozilla/4 gzip纯文本/html
浏览器匹配^Mozilla/4\.0[678]无gzip
BrowserMatch\bMSIE!没有gzip!仅限gzip文本/html
头附加用户代理
#HTACCES安全
命令允许,拒绝
全盘否定
满足所有
#1周1天
标题集缓存控制“最大年龄=691200,公共”
#1周1天
标题集缓存控制“最大年龄=691200,代理重新验证”
#1周1天
标题集缓存控制“最大年龄=691200,专用,代理重新验证”
选项+符号链接所有者匹配
重新启动发动机
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则/index.html[L]
重新启动发动机
重写基/
重写规则^index\.html$-[L]
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则/index.html[L]

要使您的网站安全,您必须拥有有效的SSL证书。它不仅仅是将
s
http

如果您的域中已经安装了一个。您可以使用下面的代码为您的域地址强制SSL(重定向)

要解决规范或重复网站问题,请使用

# Fix the non-www to www canonicalization issue:
RewriteCond %{HTTP_HOST}^example.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]

# Fix the canonical issue vecause of index files
RewriteCond %{REQUEST_URI} ^(.*)//(.*)$
RewriteRule . http://www.firstsite.net%1/%2 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(([^/]+/)*)index\.html\ HTTP/
RewriteRule index\.html$ http://www.firstsite.net/%1 [R=301,L]\
根据服务器设置,使用您的域名以及索引文件的名称和扩展名更改
firstsite.net

如果使用ngnix服务器将www重定向到非www

使用nginx重定向从url中剥离www

所以你需要有两个服务器代码


1.像.htaccess这样的点文件是隐藏文件。确保隐藏文件在cPanel中可见。2.安装SSL证书以便能够使用HTTPS。那么其他重定向呢?转到域的文档根目录,并找到应该已经存在的.htaccess文件。在该文件中进行更改。重定向将起作用。首先,你不能将http重定向到https。获得证书后,您可以将服务器上的DNS更改为重定向到https。那么其他重定向如何?您好@GeorgeFlorian您要求的是哪种重定向。你需要什么重定向?修复Nibbler指出的问题的重定向;有重复的内容,实际上有两个不同的网站。嗨@GeorgeFlorian我已经更新了上述答案。请看一看.georgeflorian.org
# Fix the non-www to www canonicalization issue:
RewriteCond %{HTTP_HOST}^example.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]

# Fix the canonical issue vecause of index files
RewriteCond %{REQUEST_URI} ^(.*)//(.*)$
RewriteRule . http://www.firstsite.net%1/%2 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(([^/]+/)*)index\.html\ HTTP/
RewriteRule index\.html$ http://www.firstsite.net/%1 [R=301,L]\
server {
    listen       80;
    server_name  www.example.com;
    return       301 http://example.org$request_uri;
}

server {
    listen       80;
    server_name  example.com;
    ...
    #The rest of your configuration goes here#
}