Wordpress永久链接结构更改问题

Wordpress永久链接结构更改问题,wordpress,.htaccess,permalinks,Wordpress,.htaccess,Permalinks,我在网上看到了一些关于这个问题的其他帖子,但是没有一个建议的解决方案对我有效,所以我重新发布了 将我的永久链接结构更改为/%postname%/后,所有链接均无效。我得到以下404: Not Found The requested URL /my-post-name/ was not found on this server. Apache/2.2.20 (Ubuntu) Server at mysite.com Port 80 当我回到defaultpermalink结构时,它又开始工作

我在网上看到了一些关于这个问题的其他帖子,但是没有一个建议的解决方案对我有效,所以我重新发布了

将我的永久链接结构更改为
/%postname%/
后,所有链接均无效。我得到以下404:

Not Found

The requested URL /my-post-name/ was not found on this server.

Apache/2.2.20 (Ubuntu) Server at mysite.com Port 80
当我回到
default
permalink结构时,它又开始工作了,但无论如何,我还是想要
/%postname%/
结构

我的
.htaccess
文件的
chmod
是777

将我的permalink结构更新为
/%postname%/
后,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
/index.php/%postname%/
它很好地工作了。然而,现在的问题是,毫不奇怪,链接的形式如下:

www.mysite.com/index.php/my-page.com
我的问题是如何从我的链接中删除
index.php
。当我将其从永久链接结构中删除时(即,
/%postname%/
),我的链接将不再工作


PS:我只使用网站中的页面,而不是使用博客条目。如果有必要,我的网站是:mll.sehir.edu.tr.

我也有同样的问题,但我正在使用其他url结构/%category%/%postname%/

de 404错误的问题在于,即使您设置了某种结构,wordpress也总是试图创建url上带有“category”字样的url

试着像这样键入你的URL:yoursite.com/category/postname,如果你现在没有收到任何错误,那是因为我们即将解决错误。现在尝试安装这个wordpress插件,从URL中删除“类别”基


让我知道您的进度

听起来您的服务器上的符号链接有问题。请在.htaccess中尝试此操作,并在进行更改后将其更改为644:

Options +FollowSymlinks
RewriteEngine on

# 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
Options+FollowSymlinks
重新启动发动机
#开始WordPress
重新启动发动机
重写基/
重写规则^index\.php$-[L]
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则/index.php[L]
#结束WordPress

用以下内容替换并尝试.htaccess:

选项+FollowSymlinks 重新启动发动机 重写cond%{HTTP_HOST}^hostname.com$
RewriteRule^(.*)$$1[R=permanent,L]如果您知道问题的根源,有很多方法可以解决此问题

问题1 首先,apache没有安装或启用mod_rewrite.c模块可能有问题

因此,您必须按如下方式启用它

打开控制台并键入以下内容:

sudo a2enmod rewrite
重新启动apache服务器

service apache2 restart
问题2 除上述内容外,如果不起作用,您可能还必须更改apache conf文件中的覆盖规则(要么
apache2.conf
http.conf
,要么
000 default
文件)

找到
目录/var/www/

Override None
更改为
Override All

问题3 如果您得到一个错误,说明找不到重写模块,那么您的userdir模块可能未启用。因此,您需要启用它

在控制台中键入以下内容:

sudo a2enmod userdir
如果仍然没有启用重写模块(如上所述),请尝试启用该模块


要进一步了解这一点,您可以访问以下网站:

每当我尝试启用我网站的永久链接来修改时,我都会遇到这个问题:“漂亮的永久链接”。我的站点是AWS EC2上的一个实例

404 Errors 

Page Not Found
The requested URL .... was not found on this server.
Apache/2.4.7 (Ubuntu) Server at mydomain.com Port 80
我尝试了以上所有的方法,但没有得到解决

最后,我检查了/etc/apache2/sites available/wordpress.conf,发现我使用了AWS分配给每个实例的公共IP地址。一旦我把它改成当前的mydomain.com,它就开始工作了

有时候,wordpress.conf会被httpd(web serser)锁定,我们需要在编辑后停止并启动它。我们还需要使用:sudo服务apache2 stop/start,以便再次重新加载wordpress.conf


希望我的经验能对其他人有所帮助。

在将Permalink结构设置为
/%category%/%postname%/
后,链接仍然不起作用。我检查了
.htaccess
文件。也一样。更改永久链接结构后,
.htaccess
是否应该更改?我使用的是默认的wordpress.htaccess。和你贴的一样。你是否尝试安装我告诉你的插件?你是否安装了apache mod_rewrite?是的,apache mod_rewrite已启用。由于你的建议的第一部分没有成功,我没有继续到第二部分。惊人的答案。很好,您正在处理与
.htaccess
文件不完全相关的问题+1.