Soy muy nuevo en Apache y CodeIgniter. Intentando enrutar /var/www/html a http://localhost/ y /var/www/CodeIgniter a http://localhost/codeigniter
Configuración de Apache:
<VirtualHost *:80> ServerName localhost ServerPath /codeigniter DocumentRoot /var/www/CodeIgniter <Directory /var/www/CodeIgniter> Allowoverride All </Directory> </VirtualHost>Código de encendido:
$config['base_url'] = 'http://localhost/codeigniter'; http://localhost/codeigniter me da codeigniter, pero http://localhost/ también me lo da cuando espero /var/www/html
¿Qué debo cambiar?
En ninguna parte configura su DocumentRoot en el fragmento que proporciona; por lo tanto, no tenemos idea de que pueda estar sirviendo algo desde /var/www/html .
Esperaría una directiva DocumentRoot /var/www/html en algún lugar dentro de su VirtualHost (prefiero tal directiva en VirtualHost, no en la configuración global del servidor). A partir de ahí, veamos la documentación de Apache httpd :
Con frecuencia hay circunstancias en las que es necesario permitir el acceso web a partes del sistema de archivos que no están estrictamente debajo de
DocumentRoot. httpd ofrece varias formas diferentes de lograr esto. En los sistemas Unix, los enlaces simbólicos pueden traer otras partes del sistema de archivos bajoDocumentRoot. Por razones de seguridad, httpd seguirá enlaces simbólicos solo si la configuración deOptionspara el directorio relevante incluyeFollowSymLinksoSymLinksIfOwnerMatch.Alternativamente, la directiva
Aliasmapeará cualquier parte del sistema de archivos en el espacio web. Por ejemplo, con
Alias "/docs" "/var/web"la URL
http://www.example.com/docs/dir/file.htmlse servirá desde/var/web/dir/file.html.
es decir, esperaría un Alias para hacer el trabajo.
Alias "/codeigniter" "/var/www/CodeIgniter"Con todo, más cerca de (esto no está completo/probado):
<VirtualHost *:80> ServerName localhost DocumentRoot /var/www/html Alias "/codeigniter" "/var/www/CodeIgniter" </VirtualHost> (agregue Options , Directory , otras directivas y permisos, etc. al gusto)