Não é possível acessar subdiretórios não-WordPress como WordPress substitui-los com um erro 404
-
-
O que acontece se você renomear oindex.phpparaindex.baknapasta raiz do WordPress?O diretório aindanão é acessível?What happens if you rename the index.php to index.bak in the WordPress root folder? Is the directory still not accessible?
- 0
- 2011-06-16
- Horttcore
-
Vocêjátentou redefinir o URLbasena sua subpasta .htaccess (comesta subpastapara o valor)?Have you tried to redefine the base url in your sub-folder .htaccess (with this sub-folder for value) ?
- 0
- 2011-08-05
- Cédric G
-
8 respostas
- votos
-
- 2011-06-17
Estou assumindo que você coloca o WordPressno seu site raize os diretóriosexternostambémestãono seu site raiz. A razãopela qualissoestá acontecendo é que os arquivos .htaccess seguem uma hierarquia. Quaisquer que sejam as diretivasnonível detop. HTAccess Flueparabaixoe se aplicam atodos os diretórios abaixo dele.
Seestefor o caso,vocêpodefazer uma das várias coisas:
- .
-
Mova seu WordPressem seupróprio diretório. Veja: http://codex.wordpress.org/moving_wordpress Se vocêmover o WordPressem seupróprio diretóriopara queestejanomesmonível da hierarquia do diretório do servidor quanto os outros diretórios que as regras do WordPress Rewritenãopodem afetar os outros diretórios.
-
rewriteengine -issonormalmentefuncionaria. Senãoestiverfuncionando,vocênãoestá usando uma configuração DNS Wildcard. Se vocêtiver um registro wildcard * hostname apontandopara o servidor da Webem suas configurações de DNS,elepode causarestragos com .htaccesse subdomínios.
-
no arquivo .htaccessno seu site raiz,adicione o seguinte acima do WordPress .htaccess directivas:
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_URI} ^/subdirectoryname1/(.*)$ [OR] RewriteCond %{REQUEST_URI} ^/subdirectoryname2/(.*)$ [OR] RewriteRule ^.*$ - [L] </IfModule>
Um deles devefuncionarpara você.
I'm assuming that you put WordPress in your site root and the external directories are also in your site root. The reason this is happening is that .htaccess files follow a hierarchy. Whatever directives are in the top-level .htaccess file flow down and apply to all directories below it.
If this is the case, you can do one of several things:
Move your WordPress into its own directory. See: http://codex.wordpress.org/Moving_WordPress If you move WordPress into its own directory so that it is on the same level in your server directory hierarchy as the other directories the WordPress rewrite rules cannot affect the other directories.
RewriteEngine Off - this would normally work. If it isn't working check that you are not using a wildcard DNS setting. If you have a wildcard * hostname record pointing at your web server in your DNS settings it can cause havoc with .htaccess and subdomains.
In the .htaccess file in your site root, add the following ABOVE the WordPress .htaccess directives:
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_URI} ^/subdirectoryname1/(.*)$ [OR] RewriteCond %{REQUEST_URI} ^/subdirectoryname2/(.*)$ [OR] RewriteRule ^.*$ - [L] </IfModule>
One of these should work for you.
-
-
Obrigado!Eutentei tantas coisas,masesta é a única solução quefuncionoupara omeu caso: subdiretórioprotegidopor senhaThanks! I've tried so many things, but this is the only solution that worked for my case: password-protected subdirectory
- 3
- 2013-03-06
- Rado
-
Trabalhouparamim também,qualquerexplicação quanto ao quefaze por quefunciona?Worked for me too, any explanation as to what it does and why it works?
- 2
- 2013-08-10
- Asaf
-
Issofuncionaparamim ..não usando o WordPress,mas openCarte tendo omesmoproblema.Umaexplicação seria realmente útil.This works for me.. not using wordpress but OpenCart and having the same problem. An explanation would be really helpful.
- 0
- 2014-08-28
- billynoah
-
-
- 2012-05-25
Eu vejoestetópico há algunsmeses,mas apenasno caso de vocênunca conseguirparafuncionar!
Eutinha umproblema semelhante,masmeuproblemafoi que ainstalação do WordPressestava localizadano subdiretório queimpedia o acesso à URL àspastas dentro da raiz (fora do diretório deinstalação do WP),mas somente quando Permalinksforam ativados. Para resolverisso,copieitantoindex.phpe .htaccess (cópianão semova) do subdiretórioem que ainstalação do WPestá localizadae colocou os doisna raiz Public_HTML (ou qualquer subdiretório que vocêestátentando acessarfora dainstalação do WP diretório). O arquivo .htaccesstem as condições de reescritaparapermalinksjá:
RewriteEngine On RewriteBase /subdirectoryinstallfolder/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]
Ativar Permalinkspara Atualizare resolveutodos osproblemas. Certifique-se de que suaspermissõespara aspastas raiz são definidas corretamentetambém,poisissome causouproblemasnopassado.
I see this thread is a few months old, but just in case you never got it to work!
I had a similar issue, but my problem was that the wordpress install was located in the subdirectory which prevented URL access to folders within the root (outside the WP install directory), but only when permalinks were enabled. To solve this, I copied both index.php and .htaccess (copy not move) from the subdirectory where the WP install is located and placed them both in the root public_html (or whatever subdirectory that you're trying to access outside the WP install directory). The .htaccess file has the rewrite conditions for permalinks already:
RewriteEngine On RewriteBase /subdirectoryinstallfolder/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]
Enable permalinks for refresh and it solved all issues. Make sure your permissions for the root folders are set correctly too as this has caused me problems in the past.
-
- 2012-09-13
Quandoeu copiomeus arquivospara omesmo servidor,mas com umapasta de subdiretório diferente,então quandoeutentei acessarminhaspáginas,index.phpestáfuncionandobem,mas as outraspáginasnão sãoe me dando umerro 404.Desculpepelomeumauinglês !!
Eu apenas olhonomeu htaccess o original:
# Comece Wordpress. Rewriteengine on. Rewritebase/ Rewritecond% {request_filename}! -F Rewritecond% {request_filename}! -D Rewriterule./index.php [L] # End wordpress
e coloque onovo com
# Comece Wordpress. Rewriteengine on. RewriteBase/subdiretórioFolder. Rewritecond% {request_filename}! -F Rewritecond% {request_filename}! -D Rewriterule./subdirectoryfolder/index.php [l] # End Wordpress.
when i copy my files into the same server but with different subdirectory folder so when i tried to access my pages, index.php is working fine but the other pages are not and giving me a 404 error. Sorry for my bad english!!
I just look into my htaccess the original:
# BEGIN WordPress RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress
and put the new one with
# BEGIN WordPress RewriteEngine On RewriteBase /subdirectoryfolder RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /subdirectoryfolder/index.php [L] # END WordPress
-
Oi @lizette.Bem-vindo ao WPSE Forums.Vocêpode querer verificar [Comofunciona aformatação] (http://stackoverflow.com/editing-help) aqui.Hi @lizette. Welcome to WPSE forums. You may want to check out [how formatting works](http://stackoverflow.com/editing-help) here.
- 0
- 2012-09-21
- Pothi Kalimuthu
-
- 2011-06-17
Se você aindaestá recebendo 404 com o htaccess desativadoe verificou os caminhose sabe que os arquivosestão lá,suas únicas opções restantes sãoessestrês ...
Opções ...
- .
- server épossivelmenteem execução um sistema operacional sensível amaiúsculase minúsculas.O que significa que se vocêestiver digitando um caminhoe não usar os caracteresexatose oinvólucro,ele simplesmentenãofuncionará.
- Permissões: Vocêpodeter aspermissõeserradasno arquivo oupasta ou umapastapai.Tente alterar aspermissõespara 755nos arquivos,pastase pastaspai.Se vocêtiver acesso SSH (terminal) aele,vápara a sua raize executeeste "chmod -r 755mydir"e queirá recursivamente definir aspermissõesparatodoseles.
- Se você aindaestivertendo umproblema depois detudoisso,então vocêtem umproblema de configuração do servidor (Apacheprovavelmente).Vocêprecisará conversar com seuprovedor de hospedagem sobreisso.
Senada dissofuncionar,então vocêprecisará de umnovo host.
If you are still getting 404's with the htaccess disabled and you have verified the paths and you know the files are there then your only options left are these three...
Options...
- Server is quite possibly running a case-sensitive operating system. Which means if you are typing in a path and not using the exact characters and casing it simply will not work.
- Permissions: You may have the wrong permissions on the file or folder or a parent folder. Try to change the permissions to 755 on the files, folders, and parent folders. If you have ssh (terminal) access to it then go to your root and run this "chmod -R 755 mydir" and that will recursively set the permissions for all of them.
- If you are still having a problem after all of that then you have a server config problem (Apache probably). You will need to talk to your hosting provider about it.
If none of that works then you need a new host.
-
- 2015-12-10
Depois de quase arrancarmeu cabeloeditando o htaccess,finalmenteencontrei uma solução quefuncionarápara o WordPress.
Eutinhaesseproblema depois deinstalar um script de codeiginternomesmo diretório raiz que o WordPressestáinstalado.
Depois detentartodos ostruques listados aqui,ainda recebi 404errosnaspáginas associadas aonovo script.
Eunotei que o WordPress Htaccessestava sobrecarregando o htaccess do script. Tambémnotei que outrasinstalações do WordPressnomesmo diretórionãotinhamesseerro 404.
Eu simplesmente adotei o htaccess danovainstalação do WordPressnomesmo diretório do servidore adicionei-anapasta ondemeu scriptestá localizado. Aquiestá comoparece:
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase /subdirectoryname/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /subdirectoryname/index.php [L] </IfModule>
Substituir subdiretório Com onome do seu diretórioe coloqueeste arquivo HTAccess dentro dapasta onde o scriptestá localizado.
Exemplo: se o siteestiverinstalado aqui
public_html/
e anovapastaestá localizada
`public_html/example`
Copie o htaccess acimae salve-o dentro dapasta 'Exemplo'e isso devefuncionar.
After nearly plucking my hair editing the htaccess I finally found a solution that will work for WordPress.
I had this problem after installing a codeiginter script on the same root directory that WordPress is installed.
After trying all the tricks listed here I was still getting 404 errors on the pages associated with the new script.
I noted that the WordPress htaccess was overiding the script's htaccess. I also noted that other WordPress installations in the same directory did not have this 404 error.
I simply adopted the htaccess from the new WordPress installation in the same server directory and added it in the folder where my script is located. Here is how it looks like :
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase /subdirectoryname/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /subdirectoryname/index.php [L] </IfModule>
Replace subdirectoryname with the name of your directory and place this htaccess file inside the folder where your script is located.
Example : If the site is installed here
public_html/
and the new folder is located
`public_html/example`
copy the htaccess above and save it inside the folder 'example' and this should work.
-
- 2013-10-02
Eu olheipara as respostas aqui uma série de vezes queme depareiem umproblema semelhante.Eutenho arquivosem um subdiretório que lançaria umerro 404 quandotentei acessá-los.Todas as coisas .htaccessnão conseguiram corrigi-lo,como diz Kirsten Douglas,o WordPressjáfaz otrabalho.
minha solução
Euencontreieste Artigo Depois de verificar oerro_logno servidor.Euestava recebendo umamensagem sobre o UIDerradopara scripts.Eutambémnotei que o 404nãoestava sendo lançadopor causa do arquivo,masporque o servidornãopôde servir um arquivo 500.htmli.e.eutinha umerro de 500.
Acontece queeu criei arquivos como roote precisei alterar apropriedadepara oproprietário da WebFiles.
Espero queisso ajude os outros quetiverem omesmoproblema!
I've looked at the responses here a number of times as I'd run into a similar problem. I have files in a subdirectory that would throw a 404 error when I tried to access them. All the .htaccess stuff failed to rectify it, as Kirsten Douglas says, Wordpress does the job already.
My solution
I found this article after checking the error_log on the server. I was getting a message about wrong uid for scripts. I also noticed that the 404 wasn't being thrown because of the file, but because the server couldn't serve up a 500.html file i.e. I had a 500 error.
Turns out I'd created files as root, and needed to change ownership to the webfiles owner.
I hope this helps others who've had the same issue!
-
- 2011-06-16
Você deve ser capaz de apenas adicionar uma diretiva
RewriteCond
quegarantirá que as regras do WordPress sejamignoradaspara solicitações dentro da sua subpasta.RewriteCond %{REQUEST_URI} !^/mysubdirectory # rest of WordPress rewrite rules
Noentanto,você diz quemesmo com não wordpress
.htaccess
Vocêestáexperimentando oproblema?Qual é o conteúdo do seu subdiretório.htaccess
?You should be able to just add a
RewriteCond
directive that will make sure the WordPress rules are ignored for requests inside your subfolder.RewriteCond %{REQUEST_URI} !^/mysubdirectory # rest of WordPress rewrite rules
However, you say that even with no WordPress
.htaccess
you're experiencing the problem? What's the contents of your subdirectory.htaccess
?
Eume refiro aestapergunta anteriormenteperguntadae não respondida adequadamente: wordpress substituindo subdiretórios reais etambém não "WordPress"páginas/código recebendo 404erro
Eutenho omesmoproblemae tentei quasetudo queencontreina rede. Definitivamenteestá relacionado aterpermalinks ligadosno WordPress. Noentanto,eu coloquei umnovo arquivo .htaccessno subdiretório com:
rewriteengine off
e oproblema aindaexiste. Mesmo seeuexcluir completamente o arquivo wordpress .htaccess oproblema aindaexiste.
Eutambémtentei algumas outras soluções sugeridas,como Errórtico 401 "Acessonão autorizado" e Errórtico 404 "Acessonão autorizado" e Redirecionar 301/mysubdirectory http://www.mydomain.com/mysubdirectory/index.html Em vários locais,todos sem sucesso.
Alguémpode,porfavor,oferecer outra solução? A únicamaneira queposso consertar étransformar Permalinks,masprecisamos queelesestejam ligados.
Obrigado,
nicole