我已将我的wordpress永久链接设置默认http://localhost/mywebsite/?p=123
更改为帖子名称http://localhost/mywebsite/sample-post/
。
然后我创建一个页面。它不起作用。 找不到404页。
对于 with out plugin 有任何解决方案。
谢谢
答案 0 :(得分:1)
已解决
本地主机中存在此问题。所以我们需要在Apache中打开重写模块。
所以如果您使用XAMPP或WAMP包,那么您将在以下位置找到该文件:
{xampp_dir} /apache/conf/httpd.conf
{wamp_dir} /apache/conf/httpd.conf
搜索以下字符串:
#LoadModule rewrite_module modules/mod_rewrite.so
删除'#'标志
答案 1 :(得分:1)
转到设置 - >永久链接设置 - >再次选择单选按钮并单击保存按钮
答案 2 :(得分:1)
您可以检查WordPress主目录中是否存在htaccess文件,如上所示。如果没有,请创建一个:
$ sudo nano /var/www/html/.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
按ctrl + x并按y保存文件。并通过
重启apache$ sudo service apache2 restart
你想告诉apache关注你的.htaccess文件。您可以通过编辑apache.conf文件
来完成此操作$sudo nano /etc/apache2/apache.conf
向下滚动到该行 默认情况下,它将是:
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
将AllowOverride的值更改为All,现在变为:
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
按ctrl + x并按y保存配置文件。为了对服务器进行此更改,首先启用mod_rewrite。
$ sudo a2enmod rewrite
然后重启服务器
$ sudo service apache2 restart
完成!
来源:https://www.wst.space/riddling-with-wordpress-permalink-setup-issues/
答案 3 :(得分:0)
如果有其他人遇到这个问题。
确保在更改固定链接设置时具有写入权限。检查您是否有.htaccess
个文件,并且存在以下内容:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpressfoldername/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpressfoldername/index.php [L]
</IfModule>