Joomla菜单项alias SEO有效,但文章alias SEO无效

Joomla菜单项alias SEO有效,但文章alias SEO无效,seo,joomla,alias,sef,Seo,Joomla,Alias,Sef,我的Joomla网站有问题。搜索引擎优化的菜单项可以有效地工作。 因此,如果我键入类似“www.example.com/about”的内容,它将起作用并显示相应的文章页面。因此,这表明SEF URL和apache mod_重写设置是正确的 我的问题是文章别名SEO 我添加了一篇名为“privacypolicy”的新文章,默认情况下,Joomla为该文章创建了别名(privacypolicy)。然后我尝试打开这个页面(www.example.com/privacy policy),但是我得到了40

我的Joomla网站有问题。搜索引擎优化的菜单项可以有效地工作。 因此,如果我键入类似“www.example.com/about”的内容,它将起作用并显示相应的文章页面。因此,这表明SEF URL和apache mod_重写设置是正确的

我的问题是文章别名SEO

我添加了一篇名为“privacypolicy”的新文章,默认情况下,Joomla为该文章创建了别名(privacypolicy)。然后我尝试打开这个页面(www.example.com/privacy policy),但是我得到了404页面未找到错误。我曾尝试将本文分为不同的部分和类别,并尝试使用完整路径(例如:www.example.com/categoryname/articlename)访问URL,但仍然出现404页面未找到错误

然后,我尝试添加另一个虚拟文章来测试SEF URL特性,发现SEF URL特性不适用于文章别名。它适用于菜单项别名(如果将文章作为菜单项放置,例如以文章/博客格式)

我的问题是,如何访问文章(使用别名URL),而不必将本文作为博客放在菜单项中?我甚至尝试使用一些Joomla SEO扩展,希望这可以修复错误,但我仍然遇到同样的问题。我已经将我的htaccess.txt改为.htaccess(我相信这可以使菜单项别名有效地工作)

下面是my.htaccess文件的内容:

# @version $Id: htaccess.txt 10492 2008-07-02 06:38:28Z ircmaxell $
# @package Joomla
# @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
# @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
# Joomla! is Free Software
##


#####################################################
#  READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE
#
# The line just below this section: 'Options +FollowSymLinks' may cause problems
# with some server configurations.  It is required for use of mod_rewrite, but may already
# be set by your server administrator in a way that dissallows changing it in
# your .htaccess file.  If using it causes your server to error out, comment it out (add # to
# beginning of line), reload your site in your browser and test your sef url's.  If they work,
# it has been set by your server administrator and you do not need it set here.
#
#####################################################

##  Can be commented out if causes errors, see notes above.
Options +FollowSymLinks

#
#  mod_rewrite in use

RewriteEngine On

########## Begin - Rewrite rules to block out some common exploits
## If you experience problems on your site block out the operations listed below
## This attempts to block the most common type of exploit `attempts` to Joomla!
#
# Block out any script trying to set a mosConfig value through the URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
# Block out any script that includes a <script> tag in URL
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]
#
########## End - Rewrite rules to block out some common exploits

#  Uncomment following line if your webserver's URL
#  is not directly related to physical file paths.
#  Update Your Joomla! Directory (just / for root)

# RewriteBase /


########## Begin - Joomla! core SEF Section
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#
########## End - Joomla! core SEF Section
#@version$Id:htaccess.txt 10492 2008-07-02 06:38:28Z ircmaxell$
#@Joomla
#@copyright版权所有(C)2005-2008开源事宜。版权所有。
#@许可证http://www.gnu.org/copyleft/gpl.html GNU/GPL
#乔姆拉!是自由软件吗
##
#####################################################
#如果选择使用此文件,请完整阅读此文件
#
#此部分下方的行:“选项+FollowSymLinks”可能会导致问题
#使用一些服务器配置。使用mod_rewrite时需要它,但可能已经存在
#由服务器管理员以允许在中更改的方式进行设置
#您的.htaccess文件。如果使用它导致服务器出错,请将其注释掉(添加到
#行的开头),在浏览器中重新加载站点并测试sef url。如果有效的话,
#它已由服务器管理员设置,您不需要在此处设置。
#
#####################################################
##如果导致错误,可以注释掉,请参见上面的注释。
选项+FollowSymLinks
#
#mod_重写正在使用中
重新启动发动机
##########开始-重写规则以阻止一些常见的漏洞攻击
##如果您的网站出现问题,请排除下面列出的操作
##这将试图阻止对Joomla的最常见类型的利用“尝试”!
#
#阻止任何试图通过URL设置mosConfig值的脚本
重写cond%{QUERY\u STRING}mosConfig\[a-zA-Z\]{1,21}(\\%3D)[或]
#阻止任何试图通过URL发送base64_编码垃圾的脚本
重写cond%{QUERY_STRING}base64_encode.\(.*)[或]
#阻止在URL中包含标记的任何脚本
重写条件%{QUERY\u STRING}(\\\\%3E)[NC,或]
#阻止任何试图通过URL设置PHP全局变量的脚本
重写条件%{QUERY\u STRING}全局(|\[|\%[0-9A-Z]{0,2})[或]
#阻止任何试图通过URL修改_请求变量的脚本
重写条件%{QUERY\u STRING}\u请求(|\[|\%[0-9A-Z]{0,2})
#将所有被阻止的请求发送到主页,出现403禁止错误!
重写规则^(.*)$index.php[F,L]
#
##########结束-重写规则以阻止一些常见的漏洞攻击
#如果您的Web服务器的URL
#与物理文件路径没有直接关系。
#更新Joomla!目录(仅适用于根目录)
#重写基/
##########开始-Joomla!核心SEF部分
#
重写cond%{REQUEST_FILENAME}!-f
重写cond%{REQUEST_FILENAME}!-d
重写cond%{REQUEST_URI}!^/index.php
重写cond%{REQUEST|u URI}(/|\.php|\.html|\.htm|\.feed |\.pdf|\.raw |/[^.]*)$[NC]
重写规则(.*)index.php
重写规则。*-[E=HTTP\U授权:%{HTTP:AUTHORIZATION},L]
#
##########完-Joomla!核心SEF段
谢谢


Bob

为了使www.example.com/categoryname/articlename正常工作,父类别必须有一个菜单项。如果您当前没有该类别的菜单项,或者希望有一个类似www.example.com/articlename的URL,只需创建一个新菜单,而不将其放入任何模块中。URL仍然有效,但您将无法使用如果您不想显示任何额外的菜单。

为了使www.example.com/categoryname/articlename正常工作,父类别必须有一个菜单项。如果您当前没有该类别的菜单项,或者希望有一个类似www.example.com/articlename的URL,只需创建一个新菜单,而不将其放入任何模块中RLs仍然可以工作,但您不会有任何不想显示的额外菜单。

嘿,布伦特,谢谢您的回复。它非常有效。尽管坦率地说,与Joomla相比,我更喜欢Wordpress中的文章管理。在Wordpress中,您可以创建文章并分配别名,然后访问文章别名URL directl我不需要为这篇文章指定一个特定的菜单项。但是无论如何,谢谢你的回复Brent!我很感激:-)是的,这是Joomla使用Menud将所有东西联系在一起的方式的一个问题。嘿Brent,谢谢你的回复。它非常有效。尽管坦率地说,我更喜欢Wordpress better co.中的文章管理与Joomla比较。在Wordpress中,您可以创建一篇文章并分配别名,然后直接访问文章别名URL,而无需为此文章分配特定的菜单项。但无论如何,感谢您的回复Brent!我很感激:-)是的,Joomla使用Menud将所有内容绑定在一起的方式存在问题。