我正在尝试在运行Ubuntu的Linode服务器上配置WordPress永久链接。即使在完成配置它们的基本技巧之后,永久链接也无法正常工作。
.htaccess -file已被授予“777”权限并且WP已重写它:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /mydirectory/mysubdirectory/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /mydirectory/mysubdirectory/index.php [L]
</IfModule>
# END WordPress
我已按以下方式配置“etc / apache2 / sites-available / default:
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride ALL
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride ALL
Order allow,deny
allow from all
</Directory>
<Directory /var/www/mydomin.com/public_html/mydirectory/>
RewriteEngine On
AllowOverride ALL
</Directory>
如您所见,我尝试将“AllowOverride”设置为不同的文件夹。我只是给了它一个镜头,认为可能有些东西覆盖了某些文件夹的规则。
我在终端上运行了“a2enmod rewrite”命令,并启用了mod_rewrite。
每次我做出更改时,我都重新启动了我的Apache。
当我在WordPress网站上导航时,出现“找不到页面”错误。 Apache错误日志说明如下:
File does not exist: /var/www/mydomain.com/public_html/mydirectory/mysubdirectory/
我在这里缺少什么?
答案 0 :(得分:3)
以下设置可以在您的VirtualHost指令中找到相关网站。在大多数情况下,它位于单独的文件中,并从服务器的主conf文件中引用。
RewriteEngine On
AllowOverride ALL
一般来说,您希望将每个站点的所有设置保留在自己的文件中。因此,如果您需要调整其他任何内容,请在包含该站点的VirtualHost指令的文件中执行此操作。它使将来更容易进行故障排除/维护。