Erro no Cloud Server - o arquivo não existe: / var / www / html / public

1

Eu recentemente movi uma aplicação web, construída usando o Laravel, para um servidor em nuvem rackspace.

A página inicial resolve bem, pois tenho a raiz definida na configuração do apache.

No entanto, quando uma solicitação é feita para qualquer uma das rotas, o servidor tenta procurar um arquivo real com o nome da rota. Por exemplo:

Se eu solicitar

www.mywebapp.com/login

O log de erros do servidor mostra

File Does Not Exist: /var/www/html/public/login

Parte da configuração do meu apache

<Directory/>
Options FollowSymLinks
AllowOverride None
</Directory>

E meu .htaccess que está localizado na pasta pública

# Apache configuration file
# http://httpd.apache.org/docs/2.2/mod/quickreference.html

# Note: ".htaccess" files are an overhead for each request. This logic should
# be placed in your Apache config whenever possible.
# http://httpd.apache.org/docs/2.2/howto/htaccess.html

# Turning on the rewrite engine is necessary for the following rules and
# features. "+FollowSymLinks" must be enabled for this to work symbolically.

<IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine On
</IfModule>

# For all files not found in the file system, reroute the request to the
# "index.php" front controller, keeping the query string intact

<IfModule mod_rewrite.c>
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>

Este é meu primeiro aplicativo da web, por isso sou muito novo em todos esses conceitos e não tenho treinamento formal. Crítica construtiva, por favor. Toda ajuda é muito apreciada.

Editar 1: arquivo .htaccess corrigido

    
por spm 17.06.2013 / 02:31

1 resposta

0

Seu problema é o primeiro conjunto de reescritas, a saber:

RewriteCond %{REQUEST_URI} !public/

A solução fácil é simplesmente mover tudo para a pasta "pública" em vez de /var/www/html . A outra correção seria remover essa reescrita, a menos que você realmente precisasse dela para algo.

    
por 17.06.2013 / 02:48