apache Mod_rewrite desligado, wordpress feliz, em 404 me infeliz
-
12-11-2019 - |
Pergunta
Já faz algum tempo que estou mexendo no mod_rewrite, mas ele tirou o melhor de mim.Espero que alguém aqui possa esclarecer meu problema.
Estou tentando auto-hospedar o wordpress e funciona muito bem quando desativo o mod_rewrite no arquivo .htaccess do site.Mas se eu ligá-lo, ocorrerá um erro proibido.E o log mostra:
As opções FollowSymLinks ou SymLinksIfOwnerMatch estão desativadas, o que implica que a diretiva RewriteRule é proibida:/c/blog/wp-admin/index.php, referenciador: http://xxx.xxx.xxx.xxx/blog/wp-admin/options-permalink.php
.htaccess contém
<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
# END WordPress
Desde já, obrigado!
Solução 3
Aparentemente, há uma peculiaridade em hospedar o wordpress em um readynas, onde os arquivos .htaccess apenas o tornam b0rk.a solução é mudar de índices de opções para opções todas em /etc/frontview/apache/Shares.conf
Outras dicas
Verifique se o seu usuário Apache (wwwuser
ou webserv
?) pode ler .htaccess
na pasta raiz.
Para tornar isso realmente fácil, você pode simplesmente tornar o arquivo legível e gravável (chmod 777
) mas por favor assegure-se para devolvê-lo a um 755 mais sensato mais tarde.
Se você achar que este é o seu bug, verifique o user:group
sobre .htaccess
(ls -la .htaccess
deve resolver) e certifique-se de que ele corresponda aos outros arquivos.
Parece que algo na sua configuração do Apache está proibindo a linha "RewriteRule"?A saída do log sugere que talvez seja necessário ativar FollowSymLinks ou SymLinksIfOwnerMatch