use*_*057 40 wordpress .htaccess wordpress-theming
我的wordpress网站的主页似乎正确显示,但如果您点击进入任何其他页面,我会收到以下错误消息:
Not Found
The requested URL /about was not found on this server.
Apache/2 Server at www.wildlionmedia.co.uk Port 80
Run Code Online (Sandbox Code Playgroud)
我不确定主题或.htaccess文件是否存在问题,而该文件未被正确重写.
http://www.wildlionmedia.co.uk/
我有什么想法可以解决这个问题?
# Switch rewrite engine off in case this was installed under HostPay.
RewriteEngine On
SetEnv DEFAULT_PHP_VERSION 53
DirectoryIndex index.cgi index.php
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine Off
RewriteBase /wildlionmedia.co.uk/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wildlionmedia.co.uk/index.php [L]
</IfModule>
# END WordPress
Run Code Online (Sandbox Code Playgroud)
小智 59
如果以上所有都不起作用.然后尝试这个.我尝试过这个.它对我有用.
2017年更新
对于新版本的apache,该文件名为apache2.conf
因此,要访问该文件,请键入sudo nano /etc/apache2/apache2.conf并更改块内的对应行<Directory /var/www >
mar*_*dge 49
那不是典型的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
Run Code Online (Sandbox Code Playgroud)
见http://codex.wordpress.org/Using_Permalinks#Where.27s_my_.htaccess_file.3F
我的.htaccess文件在哪里?WordPress的index.php和.htaccess文件应该位于"常规选项"页面上的"站点地址(URL)"设置所指示的目录中.由于文件名以点开头,因此除非您更改FTP工具的首选项以显示所有文件(包括隐藏文件),否则可能无法通过FTP客户端显示该文件.如果您通过Godaddy Hosting Connection安装安装WordPress,某些主机(例如Godaddy)可能不会显示或允许您编辑.htaccess.
创建和编辑(.htaccess)如果您还没有.htaccess文件,请创建一个.htaccess文件.如果您具有对服务器的shell或ssh访问权限,则会使用简单的触摸.htaccess命令创建该文件.如果您使用FTP传输文件,请在本地计算机上创建一个文件,将其命名为1.htaccess,将其上载到WordPress文件夹的根目录,然后将其重命名为.htaccess.
您可以通过FTP,shell或(可能)主机的控制面板编辑.htaccess文件.
最容易和最快速的事情是在仪表板>>设置>>固定链接中重置永久链接,并确保.htaccess是可写的,以便WordPress可以自己编写规则.
并且:你知道你是在调用index.cgi默认文件而不是index.php吗?那是错的.删除index.cgi.或者尝试删除整行,因为可能不需要在服务器上定义默认文档.
Moh*_*awi 14
我找到了一个非常简单的解决方案。
现在,WordPress 中的所有页面 URL 都应该可以正常工作。
您可以将 URL 返回到之前的设置,WordPress 将正确重新生成 URL。我在我的例子中选择帖子名称,效果很好。
小智 11
它对我有用:
转到Wordpress管理控制台>"设置">"永久链接">"常用设置",将单选按钮设置为"自定义结构"并粘贴到文本框中:
/index.php/%year%/%monthnum%/%day%/%postname%/
Run Code Online (Sandbox Code Playgroud)
然后单击"保存"按钮.
我从这个链接得到了这个解决方案
Kei*_*ith 10
FWIW:我从头开始重建 LAMP 服务器并安装了 WordPress。保存我的永久链接设置以生成 .htaccess 文件后,我遇到了同样的问题。原来没有启用 mod_rewrite。我在 Digital Ocean 上看到了这篇文章。
自贸协定:
首先,我们需要激活 mod_rewrite。它可用,但未通过干净的 Apache 2 安装启用。
$ sudo a2enmod rewrite
Run Code Online (Sandbox Code Playgroud)
这将激活模块或提醒您该模块已启用。要使这些更改生效,请重新启动 Apache。
$ sudo systemctl restart apache2
Run Code Online (Sandbox Code Playgroud)
我删除了之前的.htaccess文件,并通过单击Settings-> Permalinks中的save按钮创建了新文件
现在页面开始正常工作......
Wordpress网站上有一个值得信赖的答案:
我的.htaccess文件在哪里?
WordPress的index.php和.htaccess文件应该位于"常规选项"页面上的"站点地址(URL)"设置所指示的目录中.由于文件名以点开头,因此除非您更改FTP工具的首选项以显示所有文件(包括隐藏文件),否则可能无法通过FTP客户端显示该文件.如果您通过Godaddy Hosting Connection安装安装WordPress,某些主机(例如Godaddy)可能不会显示或允许您编辑.htaccess.
创建和编辑(.htaccess)
如果您还没有.htaccess文件,请创建一个.htaccess文件.如果您具有对服务器的shell或ssh访问权限,则会使用简单的触摸.htaccess命令创建该文件.如果您使用FTP传输文件,请在本地计算机上创建一个文件,将其命名为1.htaccess,将其上载到WordPress文件夹的根目录,然后将其重命名为.htaccess.
您可以通过FTP,shell或(可能)主机的控制面板编辑.htaccess文件.
以下固定链接重写代码应包含在.htaccess文件中(自WordPress 3.0起):
# 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
Run Code Online (Sandbox Code Playgroud)
*取自这里.
选择的答案对我来说没有解决此问题。因此,对于那些仍在摸索的人,我找到了另一种解决方案!
在我的Apache设置httpd.conf(您可以通过apachectl -V在控制台中运行来找到conf文件)中,启用以下模块:
LoadModule rewrite_module modules/mod_rewrite.so
现在该站点可以按预期运行。
小智 5
它对我来说是这样的:
转到“ Wordpress管理控制台”>“设置”>“固定链接”>“通用设置”,将单选按钮设置为“自定义结构”,然后粘贴到文本框中:
/index.php/%year%/%monthnum%/%day%/%postname%/
Run Code Online (Sandbox Code Playgroud)
然后单击“保存”按钮。
嗨,
虽然晚了 如果有人遇到类似问题,您可以通过修改虚拟主机文件或托管 WP 站点的任何位置来允许永久链接。
所以基本上一切正常——你设置了永久链接来发布,突然 url 消失了。你去了很多讨论论坛(像我一样)尝试了很多修改并得到“服务器权限 403”错误或未找到 URL 错误。您所要做的就是转到主机文件,例如 000-default.conf 如果使用默认虚拟主机或启用站点的配置文件,
在目录部分使用:
<Directory "path/to/dir">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Run Code Online (Sandbox Code Playgroud)
不要使用以下内部目录
Order allow,deny
Allow from all
Run Code Online (Sandbox Code Playgroud)
Apache 2.4中不推荐使用 Order 和 Allow 指令。
同样,您可以在 /etc/apache2/apache2.conf 中设置目录,为您的路径设置目录,不要使用上述内容 - 这将导致权限 403 错误。
除此之外,您还需要为 apache 启用 mod_rewrite
| 归档时间: |
|
| 查看次数: |
154895 次 |
| 最近记录: |