해결 “이것은 어 색 한 / 404 찾을된 수 없습니다 오류” 설치 후에 “젠 드-표현”

미들웨어를 사용, 이 게시물에서 우리의 문제를 해결할 것 이다 “이것은 어 색 한 / 404 찾을된 수 없습니다 오류” 설치 후에 “젠 드-표현”.

문제

Recentemente, interessado em ver como os Middleware funcionam, 내가의 설치는 “zend-expressive-skeletonconforme o Guia Quick Start: Using the Skeleton + Installer:

$ composer create-project zendframework/젠 드-표현-skeleton expressive

이 후, para checar o resultado, acessei o navegador no endereço http://localhost/expressive/public/ e peguei o seguinte erro:

Oops!
이것은 어 색 한.
 
We encountered a 404 찾을된 수 없습니다 오류.
 
You are looking  something that doesn't exist or may have moved. Check out one of the links on this page or head back to Home.

솔루션

A mensagem de erro indicava que a página não tinha sido encontrada, 그래서, parecia um problema de PATH (caminho) para os arquivos da aplicação.

Dando uma olhada por aí, cheguei a conclusão que isto aconteceu por eu não ter criado o projeto diretamente na raiz do diretório de publicação (전: www/ ou htdocs/), mas em um subdiretório, desse jeito: http://localhost/표현/public/.

어쨌든, parece que o Expressive tem alguma dificuldade com Base Url / Base Path. Na verdade a própria arquitetura do Zend Framework convenciona que o diretório de publicação deve ser opublic/“, tanto que se você rodar o servidor Web apontando parapublic/“, a aplicação funciona normalmente.

Rodando o comandophp -S 0.0.0.0:8080 -t public/pelo terminal (명령):

Taylor@taylor-pc MINGW64 /c/wamp64/www/expressive
$ php -S 0.0.0.0:8080 -t public/
PHP 7.0.10 Development Server started at Thu Aug 10 15:55:00 2017
Listening on http://0.0.0.0:8080
Document root is C:\wamp64\www\expressive\public
Press Ctrl-C to quit.
[Thu Aug 10 15:55:34 2017] 127.0.0.1:65106 [404]: /expressive/public/

이제 예, fazendo isto é possível acessar http://localhost/expressive/public/ sem qualquer erro.

Mas para não ficar nessa de sempre apontar parapublic/“, existe o Middleware 로스/basepath como solução de contorno. 설치는 간단:

$ 작곡가 require los/basepath

이 후, basta adicionar o Middleware como um dos primeiros na sua aplicação. 예를 들어, eu coloquei a chamada no arquivopublic\index.php”, logo após “$app ter sido inicializada:

1
$app->pipe(새로운 내용 \LosMiddleware\BasePath\BasePath('/expressive/public'));

그거에요!

Referência

Access /path/to/public got 404 page
Base Path Middleware for PHP

총 조회 수: 193

에 대 한 의견 “해결 “이것은 어 색 한 / 404 찾을된 수 없습니다 오류” 설치 후에 “젠 드-표현”

  1. Juciellen 카브 레 라 고 말했다:

    드 그란데 valia! 매우 유사 했다 여기에서 문제를 명확히 도움이. 감사!

응답을 남기다

귀하의 이메일 주소가 게시 되지 것입니다. 필수 항목으로 표시 됩니다. *