标签: 固定链接

  • WordPress固定链接设置基础教程

    在本教程中,我们将解释什么是固定链接,并带您了解WordPress提供的所有默认固定链接结构。然后,您将学习如何通过两种方式创建自定义的。

    您网站上的每个页面都有一个唯一的URL,使访问者能够直接识别和访问它。理想情况下,您希望这些URL尽可能易于阅读和输入。在技​​术术语中,这些唯一的URL称为固定链接

    当您使用WordPress等内容管理系统 (CMS) 时,它会根据您选择的固定链接结构自动为您的页面和文章生成 URL。但是,重要的是要注意,在可读性和搜索引擎优化 (SEO) 方面,某些选项更合适。

    什么是WordPress固定链接

    简而言之,WordPress固定链接是平台为您的每个文章和页面设置的唯一URL。以这两个固定链接为例:

    • yourdomain.com/blog/wordpress-crash-course/
    • yourdomain.com/?p=123

    它们都说明了独特的固定链接结构。第一个使用博客文章的名称作为其slug,它是标识唯一页面的URL段。第二个示例使用文章的唯一ID作为其slug,而不是它的名称。

    从技术角度来看,两个URL的工作方式完全相同。但是,很容易看出第一种方法对用户更加友好。它不仅更容易记住,而且还告诉访问者该页面的全部内容。这被称为“漂亮”(相对于“丑陋”)固定链接。

    更重要的是,使用关键字来解释您的页面包含的内容也有助于搜索引擎确定其目的。换句话说,从SEO的角度来看,它们更好。如果您没有使用优化的固定链接结构,您就会将自然流量留在桌面上。

    WordPress包含的6种固定链接结构类型(以及您应该使用哪一种)

    在我们开始之前,重要的是要注意,如果您正在运行一个新的 WordPress 网站,您应该始终尽早设置您最喜欢的固定链接结构。传统观点建议在前六个月内锁定您的固定链接结构,因为您的 SEO 应该仍处于增长阶段。

    另一方面,如果您的网站存在的时间更长,您仍然可以更改固定链接结构。但是,如果您不实施到新URL的重定向,则可能会影响您的搜索排名。

    考虑到这些背景信息,让我们帮助您确定WordPress网站的最佳结构。

    1.朴素

    我们已经在上面介绍了这个固定链接结构。这是另一个刷新你的记忆的例子:

    • examplewebsite.com/?p=121

    顾名思义,这种结构是简单的。slug实际上是您数据库中设计的页面ID。它不会为您提供有关您正在访问的页面的任何信息。在大多数情况下,您会希望使用一种结构,为用户(和搜索引擎)提供更多的功能。

    2. 日期和名称型

    顾名思义,此固定链接结构使用您的文章或页面的名称及其发布日期作为URL的一部分。下面是一个例子:

    • examplewebsite.dev/2017/12/05/sample-post/

    这种结构的好处是它可以让您的用户快速确定特定文章的发表日期。在某些情况下,这可以帮助他们评估它是否仍然相关,而无需在文本中寻找日期。您经常会发现新闻或杂志网站使用这种结构——基本上,任何创建特定时间内容的网站。

    另一方面,以日期标记文章有一个缺点。例如,假设您有一篇两年前发表的优秀文章,它被认为是特定主题的权威信息来源。一些读者可能只是简单地查看日期并认为这些建议不再相关,无论这是否真实。

    需要明确的是,始终建议在文章中的某处包含发布日期,但没有令人信服的理由将其添加为URL的一部分。

    3. 月份和名称型

    这种固定链接结构与我们刚刚介绍的结构几乎相同。唯一的区别是,它不包括发布日期作为文章URL的一部分:

    • examplewebsite.dev/2017/12/sample-post/

    从功能的角度来看,我们正在处理与Day和Name结构相同的一组优缺点。访问者一眼就能确定您的文章或页面的年龄可能会很好,但它也可能使您的某些内容看起来过时。

    4. 数字型

    数字的固定链接结构的股票很多相似的地方与普通的选项。让我们使用此设置检查一 URL,以便您可以看到它的运行情况:

    • examplewebsite.com/archives/121

    与朴素固定链接一样,此设置使用您文章的ID作为其 slug,并且不会向用户提供任何其他信息。在这种情况下,您还会获得一个简短的固定链接,但它没有其他优势,因此不应成为您的首选。

    5. 文章名

    在所有默认的WordPress固定链接结构中,这是我们最喜欢的。它根据名称识别文章和页面,从而生成干净且令人难忘的 URL,例如:

    • examplewebsite.com/your-best-post

    最棒的是,您可以以任何方式命名您的文章和页面,如果这些标题太长,甚至可以自定义slug。根据经验,你的slug应该保持在三到五个字之间。这样,它仍然足够短,让您的访问者记住,搜索引擎也将能够轻松识别文章的内容。

    6. 自定义结构

    如果您对我们目前讨论过的任何结构都不感兴趣,WordPress还可以让您构建自己的结构。例如,如果您正在运行一个博客,您可以为综述和评论设置单独的类别,并将它们包含在您的链接中。这是前者的一个例子:

    • examplewebsite.com/top-lists/x-best-puppies-2018

    实际上,WordPress为您提供了十个结构标签,您可以使用它们来构建自定义固定链接。如果您想知道它们是什么以及如何使用它们,请继续阅读 – 我们将在下一节中介绍所有基础知识。

    创建自定义固定链接的两种方法

    正如我们一分钟前提到的,WordPress为您提供了一种创建自定义固定链接的内置方法。但是,如果您想对过程进行更多控制,您也可以使用插件来实现类似的结果。让我们谈谈这两种方法。

    1. 使用WordPress的自定义结构标签

    WordPress使您能够使用十种类型的结构标签来创建自定义固定链接。让我们花一点时间来了解它们,然后我们将在实践中看到它们。

    • 日期标签 — 此类别包括%year%%monthnum%%day%%hour%%minute%%second%,它们的工作方式完全符合您的预期。添加任何这些标签作为您的固定链接结构的一部分将在您的URL中包含这些数字。
    • 文章ID和名称—— 这些标签分别是%post_id%%postname%。前者显示您的任何文章或页面的唯一ID,而第二个显示其完整标题。
    • 类别和作者 –您可以分别使用%category%%author%标签添加这些选项。

    要使用这些标签中的任何一个,您需要访问仪表板并转到“设置” >“固定链接”选项卡。进入后,您可以从我们之前讨论过的结构中选择您想要的任何固定链接结构。如果要创建自己的结构,请选择列表底部的自定义结构选项。

    WordPress固定链接设置基础教程-1

    现在,您所要做的就是混合和匹配我们之前讨论过的结构标签。

    例如,/%category/%post-name/将产生以下URL:

    • http://www.examplewebsite.com/top-lists/x-best-puppies-2017

    您可以根据需要为自定义固定链接结构使用尽可能多或尽可能少的标签。但是,我们建议尽可能缩短内容并避免日期,这样您的内容就会保持常青。

    当您准备好时,请记住保存您的更改,就是这样!

    2. 使用自定义固定链接插件

    如果您已经使用 WordPress 一段时间了,您就会知道几乎所有可以想象的场景都有插件。自定义固定链接也不例外。一种选择是Permalink Manager插件。

    WordPress固定链接设置基础教程-2

    此工具使您可以自定义文章和页面的固定链接结构,并在单个屏幕上更改任何单个文章的URL。

    首先,安装启用插件,然后导航到“工具” >“Permalink Manager选项卡。在里面,您会找到所有文章的列表以及调整其固定链接的选项。

    WordPress固定链接设置基础教程-3

    URL编辑器选项卡部分还包括您的标签媒体,其工作只是一样的文章部分。完成检查后,移至Permastructures选项卡。在那里,您可以为您的文章、页面和媒体设置独特的固定链接结构。

    WordPress固定链接设置基础教程-4

    如您所见,该插件还使用WordPress的默认结构标签来帮助您构建新的固定链接。您所要做的就是将它们按您想要的顺序排列并保存您的更改。

    WordPress固定链接设置基础教程-5

    如果您对新结构不满意,您可以随时使用每个字段下方的“Restore to Default Permastructure”按钮。这几乎是您开始使用该插件所需要知道的全部内容。

    配置固定链接发现无法正常打开?

    如果您在配置WordPress的固定链接,尤其为设置自定义固定链接时,再次打开文章或者页面时发现无法正常打开。这一般是由于服务器的rewrite规则没有配置好。

    配置参考如下:

    Nginx服务器rewrite规则配置

    一般目录为/usr/local/nginx/…,找到网站的conf或者rewrite规则的conf,添加以下代码行:

    location /
    {
    try_files $uri $uri/ /index.php?$args;
    }
    rewrite /wp-admin$ $scheme://$host$uri/ permanent;
    location /
    {
    try_files $uri $uri/ /index.php?$args;
    }

    rewrite /wp-admin$ $scheme://$host$uri/ permanent;

    location /
    {
    try_files $uri $uri/ /index.php?$args;
    }
    
    
    rewrite /wp-admin$ $scheme://$host$uri/ permanent;

    Apache服务器rewrite规则配置

    一般目录为/www/wwwroot/www.yourdomain.com,修改.htaccess文件添加以下代码行:

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>

    如果你使用的是宝塔面板,需要配置WordPress伪静态规则,登录你的宝塔面版,点击“网站”菜单进入网站列表,选择你需要配置的网站,点击“设置”,在弹出窗口找到伪静态选项,然后选择网站程序为“WordPress”,最后保存即可。

    宝塔控制面板-静态化设置

    结论

    很多人不注意他们网站URL的结构,这是一个错误。这似乎是一个小细节,但使用正确的固定链接结构可以提升您的SEO并使您的网站更加用户友好。

    作为一般经验法则,您希望避免包含长串数字或笨拙短语的 URL。考虑到这一点,最好的方法通常是使用您的文章名称作为默认的固定链接结构,并在必要时手动缩短它们。如果这不适合您的网站,您可以随时使用WordPress的标签或插件创建自定义固定链接结构。

  • 为什么找不到WordPress网站的.htaccess文件

    无法在WordPress安装目录找到.htaccess文件?一些WordPress入门者经常问“ .htaccess文件在哪里?” 和“为什么在我的WordPress网站找不到它?”。

    有时我们可能需要编辑.htaccess文件或将其删除以修复常见的WordPress错误。在本文中,将解释为什么您无法在WordPress网站上找到.htaccess文件,以及如何找到该文件。

    findinghtaccessfile

    什么是.htaccess文件?

    .htaccess文件是服务器配置文件,该文件告诉服务器如何处理网站上的某些内容。例如URL重定向,使用密码保护管理员区保护某些目录等。

    该文件位于您的WordPress网站的根文件夹中。WordPress使用它来管理重定向和永久链接。

    .htaccess文件是一个功能非常强大的配置文件,可以用来做很多有用的事情。在本文我们不展开说明,后面有机会我们再来详细聊一下关于.htaccess的一些技巧。

    为什么找不到.htaccess文件?

    在网站的根文件夹中找不到.htaccess文件的两个常见原因:它要么被文件管理器软件隐藏,要么根本不存在。

    1. FTP客户端未显示隐藏文件

    htaccess文件名前面的点表示它是一个隐藏文件。默认情况下,当您使用FTP客户端连接到WordPress托管服务器时,不会显示隐藏文件。

    要使隐藏文件可见,您将需要更改FTP客户端设置。

    例如,在FileZilla中,您可以在“Server»Force showing hidden files”菜单下找到该选项,强制显示隐藏文件。

    showhiddenfiles

    FileZilla隐藏文件显示设置

    如果您在cPanel中使用“文件管理器”应用程序,那么在启动该应用程序之前应勾选显示隐藏文件的选项。

    cpanel-hiddenfiles

    cPanel隐藏文件设置

    对于其他FTP客户端,一般应用程序设置或首选项菜单中找到显示隐藏文件的选项。

    启用此选项后,您才能够查看WordPress网站的所有隐藏文件,包括.htaccess文件。

    注:如果你使用宝塔面板来管理网站文件,可能就不存在这个问题了,因为默认情况下,宝塔面板均显示.htaccess文件。

    2. .htaccess文件不存在

    找不到.htaccess文件的第二个最常见的原因是您的WordPress网站尚未生成该文件,又或者它就不应该存在。

    WordPress自动生成.htaccess文件,因为需要依赖该文件实现重定向永久链接

    如果WordPress根目录没有.htaccess文件,那么您可以进入WordPress仪表盘,访问“设置”»“固定链接”页面,不作任何更改,直接单击“保存更改”按钮。

    permalinks

    WordPress固定链接修改

    WordPress将尝试为生成.htaccess文件。

    在极少数情况下,由于文件权限问题,WordPress可能无法生成.htaccess文件。

    在这种情况下,它将在“设置”»“固定链接”页面底部显示一条消息,提示“ .htaccess文件不可写”。

    在这种情况下,将需要您手动创建.htaccess文件,并在其中添加所需的代码。

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>

    只需将上述代码复制并粘贴到文本编辑器(如记事本)中,将其另存为.htaccess文件在桌面上。

    然后,使用FTP客户端连接到网站服务器,上传.htaccess文件至WordPress根目录。

    如果上传文件时出错,则需要更改根目录的文件权限。

    假设您所有的WordPress文件都位于/home/johnsmith/public_html/目录下。

    public_html文件夹成为网站根目录。转到其父目录,然后右键单击public_html文件夹。选择File Permissions,打开文件权限对话框。

    在文件权限对话框中输入755,然后再尝试将.htaccess文件上传到public_html文件夹。

    ftpfilepermission

    服务器文件/文件夹权限设置

    当然,如果你的WordPress网站使用的是Nginx服务器,那你可以完全忽略上述的内容,因为Nginx是与Apache完全不一样的一个Web服务器了。

  • 如何修复WordPress出现无效固定链接问题

    错误类型:
    WP内部错误
    错误名称:
    固定链接无效
    英文名称:
    404 Page Not Found
    错误描述:
    由于Apache或者Nginx配置问题,导致WordPress固定链接无法正常打开。注:此404错误非页面不存在404错误。

    如何修复WordPress出现无效固定链接问题

    访问您的网站时遇到“ 404 Page Not Found ”错误?您可能遇到固定链接无效的问题。

    在本文中,我们将帮助您找到此错误背后的罪魁祸首,并为您提供有关如何修复它的全面指南。

    各种原因可能会触发您网站上的固定链接无效。

    • 新插件安装。您安装的新插件可能会干扰您的.htaccess文件。
    • 恢复备份或迁移WordPress。您最近恢复了备份或将站点切换到新域或服务器。
    • 更新。更新插件、主题或WordPress核心后出现的不兼容问题。
    • .htaccess文件中的更改。错误地更新或更改您的.htaccess文件。

    以下是有关如何修复WordPress中无效的固定链接的几种方法。

    处理此问题的最简单方法是重置永久链接结构:

    1. 导航到您的WordPress后台。转到设置>固定链接

    2. 选择另一种固定链接结构 -> Save Changes。例如,如果您当前正在使用日期和名称设置。将其更改为其他内容,例如Post name

    WordPress固定链接

    3. 完成后,将其更改回您的标准结构并再次点击保存更改。

    如果您仍然收到“404 Page Not Found”错误,让我们尝试其他剩余方法。

    上述办法的目的是触发WordPress的rewrite规则生成。

    2.禁用插件

    停用可能触发错误的最近安装或更新的插件。否则,您也可以完全删除所有已安装的插件:

    1. 转到WordPress仪表盘中的插件菜单 -> 已安装的插件

    2. 单击插件名称旁边的停用按钮。

    3. 完成后,使用以前的方法重置固定链接结构。

    3.替换.htaccess文件

    如果这些选项都没有解决您的固定链接损坏问题,则该问题可能与您的.htaccess文件的配置有关。因此,您应该将当前的.htaccess文件替换为默认文件。

    1. 导航到宝塔面板->文件

    2. 选择您需要管理的网站域名,然后进入WordPress安装目录。

    3. 找到根目录文件夹中的.htaccess文件。

    4. 右键单击并选择重命名。然后,更改文件名(例如.htaccess-error)。

    重命名.htaccess

    5. 接下来,单击页面顶部的新建文件图标。不要忘记将其命名为.htaccess

    6. 将下面的代码粘贴到新的.htaccess文件中。

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress

    7. 完成后,保存并关闭

    修改htaccess

    或者,您也可以使用FTP客户端来运行此过程。

    如果问题没有解决,请尝试记住在错误发生之前您采取了哪些措施。如果它发生在执行特定更新之后,那么恢复备份可能是让您的站点启动并运行的可靠选项。

    如果你的Web服务器使用的是Nginx,则可以登录你的宝塔面版,点击“网站”菜单进入网站列表,选择你需要配置的网站,点击“设置”,在弹出窗口找到伪静态选项,然后选择网站程序为“WordPress”,最后保存即可。

    宝塔控制面板-静态化设置

    宝塔控制面板-静态化设置

    如果你使用的是LNMP环境,一般情况下你在配置host的时候,若已经选择WordPress作为网站程序,理论上lnmp已经帮你配置好了网站伪静态。

    但如果你在使用/%post_id%.html或者/%post_id%格式作为固定链接时发生链接无法访问,可以尝试手动配置Nginx或者Apache,配置参考如下:

    一般目录为/usr/local/nginx/…,找到网站的conf或者rewrite规则的conf,添加以下代码行:

    location /
    {
    try_files $uri $uri/ /index.php?$args;
    }
    rewrite /wp-admin$ $scheme://$host$uri/ permanent;
    location /
    {
    try_files $uri $uri/ /index.php?$args;
    }
    rewrite /wp-admin$ $scheme://$host$uri/ permanent;
    location /
    {
    try_files $uri $uri/ /index.php?$args;
    }
    rewrite /wp-admin$ $scheme://$host$uri/ permanent;

    小结

    有很多原因导致您在 WordPress 中遇到固定链接损坏的问题。坏消息是,您的网站将无法访问,并会显示“ 404 Page Not Found” 错误。

    幸运的是,您可以使用以下三种简单方法轻松处理此问题:

    • 重置永久链接结构——在 WordPress 仪表板上配置您的内置固定链接设置。
    • 禁用插件——点击几下即可停用已安装的插件。
    • 替换 .htaccess文件或者Nginx配置文件– 从文件管理或使用FTP客户端替换 .htaccess 文件。

    我们希望这个分步教程将帮助您修复WordPress网站上损坏的固定链接。