我正在寻找一种方法来删除所有WordPress网址的尾部斜杠。
我找到了类似this one的类似答案,但在之前有WordPress .htaccess规则时它不起作用。
这是我目前的WordPress .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
答案 0 :(得分:17)
可能就像去设置&gt;一样简单wp admin中的永久链接,并在自定义结构的输入框中删除尾部斜杠
答案 1 :(得分:7)
试试这个:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteRule (.+)/$ $1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
如果不起作用,试试这个:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteRule (.+)/$ http://www.domain.com/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
答案 2 :(得分:2)
以下是在网站范围内删除斜杠的步骤。如果您只希望仅删除帖子上的斜杠,请跳至步骤2 。
.htaccess
中,行# BEGIN WordPress
和# END WordPress
may get reset by WordPress之间的代码。避免在这些行之间更改代码。 RewriteCond %{REQUEST_FILENAME} !-d
来避免此问题。以下解决方案可以解决这些问题。
在/.htaccess文件的# BEGIN WordPress
行之前添加以下代码。这样会将带有斜杠的URL重定向到没有斜杠的URL。
# Remove trailing slashes
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ /$1 [R=301,L]
</IfModule>
正如其他人指出的那样,您还必须将“永久链接”(“设置”->“永久链接”)更新为“自定义结构”,并在其中删除尾随斜杠。它会删除所有帖子上的尾部斜杠。
答案 3 :(得分:0)
要解决WordPress URL中的尾部斜杠问题,请登录到您的网站管理面板->转到“设置”标签->单击“设置”下的“永久链接”。它将打开一个类似于以下屏幕的页面:
现在,检查以确认您为网站URL结构选择的设置。确保您在URL结构中没有留下斜杠。 https://blog.techblogsearch.com/2018/11/29/guide-to-remove-trailing-slash-from-wordpress-url