Apache no encuentra la carpeta en el sistema de archivos; Agregar "\ xe2 \ x80 \ x9d" al final de las Rutas de archivos

10

Tengo tres hosts virtuales que se ejecutan en apache2 en mi Macintosh personal con OS X Mavericks y me he encontrado con una confusión. Están configurados en mi archivo httpd-vhosts.conf de la siguiente manera:

<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents"
ServerName localhost
ServerAlias localhost
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents/dev1"
ServerName dev1.local
ServerAlias www.dev1.local
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents/dev2"
ServerName dev2.local
ServerAlias www.dev2.local
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents/dev3”
ServerName dev3.local
ServerAlias www.dev3.local
</VirtualHost>

Nota: La primera entrada me permite escribir "localhost" y hacer que se cargue como lo esperaría sin ejecutar Virtual Hosts.

dev1 y dev2 funcionan bien, pero aparece un error 404 que dice "La URL solicitada / no se encontró en este servidor". cuando intento cargar dev3 en la máquina local. Las tres carpetas Dev tienen los mismos permisos. He verificado los nombres. Cuando revisé el error_log encontré esto:

[Vie 24 de enero 12:55:07 2014] [error] [cliente 127.0.0.1] El archivo no existe: / Library / WebServer / Documents / dev3 \ xe2 \ x80 \ x9d

¿Alguien sabe por qué Apache agrega un "\ xe2 \ x80 \ x9d" al final de la ruta de la carpeta, o por qué dev3 no se carga? (Sospecho que estos caracteres agregados al azar son el motivo) ¡Cualquier entrada es bienvenida! ¡Gracias por leer!

Tío nerdicus
fuente

Respuestas:

16
DocumentRoot "/Library/WebServer/Documents/dev3”
                                               ^----- no proper quotation mark :9

Si tienes php instalado:

<?php
echo "\xe2\x80\x9d";

// or

echo utf8_decode("\xe2\x80\x9d");

// should give you ”
Daniel W.
fuente
2
makes a "Not Bad" face and face palms hand through headAhora mira, eso tiene mucho sentido. Esto también me pasa con los formularios HTML ... ¡GRACIAS! He estado rascándome la cabeza durante una hora sobre esto. ¿Cómo se escribe ese personaje frente a las comillas regulares @DanFromGermany?
Tío Nerdicus
¡@UncleNerdicus depende de tu editor de texto! Realmente solo uso NetBeans, notepad ++ y vi para todo y nunca tuve tales problemas
Daniel W.
1
@DavidHoude Me está haciendo esperar unos minutos más (¡tontos temporizadores!), ¡No lo he olvidado!
Tío Nerdicus
1
@UncleNerdicus si alguna vez se encuentra ^Men los finales de línea o similar, es debido a un final de línea incorrecto ( \r\ncaracteres) dos / unix / mac (hay herramientas: dos2unix, etc.), por si acaso; D
Daniel W.
2
No tienes idea de cuán enorme fue mi descarga de alegría cuando leí esta solución. Se unió a esta comunidad solo para votar esto.
roberrrt-s
1

Te perdiste la VirtualHostconfiguración.

NG: DocumentRoot "/Library/WebServer/Documents/dev2"

OKAY: DocumentRoot /Library/WebServer/Documents/dev2

usuario283690
fuente
Esto me lo arregló. Gracias
Bashar Abdullah
0

DocumentRoot "/ Library / WebServer / Documents"

debería ser

DocumentRoot / Library / WebServer / Documents

no "" en DocumentRoot

Ardy Shazril
fuente
1
¡Bienvenido a Server Fault! Aunque su respuesta probablemente sea correcta, es esencialmente la misma respuesta que ya tenemos.
jornane