Uriel Barranco Robles
Mario Alejandro Crespo Reyes
Javier Paulo Perdomo Tamani
Uriel Barranco Robles
Mario Alejandro Crespo Reyes
Javier Paulo Perdomo Tamani
Miguel Osorio
Daniel Méndez Amutari
Ezequiel Rodriguez Esparza
Miguel Osorio
Javier Damiani
Fer Torres
Mario René García Péres
Diana Cañón
Carlos Enrique Membreño Barrientos
Guillermo Díaz
Francisco Miralles Niño
Ezequiel Rodriguez Esparza
Rosa Rojas
Ezequiel Rodriguez Esparza
Carlos Rubén Díaz Gutiérrez
Mauricio Andrés Brochet Buelvas
jaime cuesta rojas
Ivan Farid Espadas Escalante
Nestor Alejandro Melo Sánchez
Bulmaro Arellano Navarrete
Carlos Eduardo Gomez García
Ezequiel Rodriguez Esparza
Maria del Sol Cisneros Castro
Enzo Gonzã¡Lez
Aldo Burgos Rodriguez
Daniel Méndez Amutari
Ramiro Godoy
Carlos Enrique Membreño Barrientos
Vanessa Pineda Bernal
Carlos Enrique Membreño Barrientos
Diego Fernando Henao Ospina
Marina Mayo
Inés Lorenzo
Ramiro Godoy
Luis Martinez
Jhony Robles
Jhony Robles
Carlos Eduardo Gomez García
Marco Antonio Alducin Garcia
Jorge A. Torres
Solo dos pequeños errores que encontré al seguir la guía en mi computadora que se corrigieron de la siguiente manera:
LoadModule php_module /usr/local/opt/php/lib/httpd/modules/libphp.so
Esta línea se cambia por lo siguiente, necesitan verificar en la estructura de sus carpetas de acuerdo a la instalación que hayan realizado.
LoadModule php_module /usr/local/opt/php@8.0/lib/httpd/modules/libphp.so
Y por último al reiniciar el servicio php en brew con el siguiente comando:
brew services restart php@8.0
Como pueden notar en realidad es agregar la versión de php que se instala en su sistema.
PD: Me agrada la forma de explicar del profe!!! Por cierto felicidades amigo, tus aportes son de lo mejor y ahora tu curso es una maravilla, gracias por tu esfuerzo y tu tiempo.
Saludos
Gracias por tu aporte !, con este cambio de linea el servidor funcionó correctamente
Excelente Aporte para los compañeros que utilizan macOS!👏😀
Problema: 403 Forbidden
Tuve este problema al intentar acceder a localhost:
Para solucionarlo vamos a la terminal y ejecutamos:
whoami
Y nos quedamos con el nombre que nos devuelve.
Luego vamos a esta ubicación /etc/apache2/users y ejecutamos ls para ver todos los archivos de la carpeta:
cd /etc/apache2/users ls
En mi caso solo aparece el archivo Guest.conf. Entonces necesitamos crear un archivo como este: usuario.conf, donde usuario es el nombre que nos devolvió el comando whoami.
touch usuario.conf
Ahora verificamos la versión de Apache que tenemos instalada:
httpd -v
Y nos devolverá algo como esto: Server version: Apache/2.4.54 (Unix), aquí vemos si tenemos Apache 2.2 o Apache 2.4.
Ahora debemos modificar el archivo que creamos hace un momento y para ello ejecutamos sudo nano usuario.conf y agregamos:
// Para Apache 2.2 <Directory "/Users/username/Sites/"> Options Indexes MultiViews FollowSymLinks AllowOverride All Order allow,deny Allow from all </Directory> // Para Apache 2.4 <Directory "/Users/username/Sites/"> AllowOverride All Options Indexes MultiViews FollowSymLinks Require all granted </Directory> // Donde username es el nombre que nos devolvio el comando whoami.
Guardamos y salimos del editor.
Ahora vamos a verificar los permisos del archivo que acabamos de modificar con ls -lah usuario.conf y nos debe devolver:
-rw-r--r-- 1 root wheel 126B Aug 2 10:48 usuario.conf
Procedemos a reiniciar Apache:
sudo apachectl restart
Ahora vamos a modificar el archivo httpd.conf (es el mismo archivo que estuvo modificando el profe Slash):
sudo nano /usr/local/etc/httpd/httpd.conf // O bien como lo hizo el profe sudo code /usr/local/etc/httpd/httpd.conf
Si abrimos el archivo con VSCode entonces presionamos commad + f y en la ventana escribimos _www y buscamos estas líneas:
User _www Group _www
Y las modificamos para que nos quede así:
User usuario // recuerda que usuario es el nombre que nos devolvió whoami Group staff
Guardamos y salimos. Ahora debemos reiniciar Apache una vez más:
sudo apachectl restart
Vamos a nuestro navegador, escribimos “localhost” en la barra de direcciones y debería funcionar.
gracias Miguel Osorio funciona gracias por el aporte
a mi no me funciono 😩
Instalación de PHP en macOS - Resumen
Para este proceso debemos tener instalado previamente el sistema de gestión de paquetes Homebrew. Siempre es bueno mantenerlo actualizado, para ello ejecutamos en la terminal:
// Primero brew update // Después brew upgrade
Después procedemos a instalar CURL:
brew install curl
Luego instalamos HTTPD y PHP:
brew install httpd php@8.1 php@7.4
Atención: aquí estamos instalando dos versiones de PHP, aunque podemos instalar solamente una versión.
Una vez instalado PHP procedemos a desvincular la versión que nuestra Mac trae por defecto:
brew unlink php
Ahora vinculamos la versión más reciente que tenemos o bien la versión que necesitemos:
brew link --force php@8.1
Comprobamos la versión de PHP que tenemos instalada:
php --version
Ahora vamos a editar algunos archivos de Apache. Se debe tener en cuenta si nuestra Mac es Intel o M1 pues las rutas de los archivos cambian en cada caso. Las rutas son las siguientes:
Ubicación del archivo httpd.conf:
/usr/local/etc/httpd/httpd.conf/opt/homebrew/etc/httpd/httpd.confMódulo de libphp.so:
Para Intel: LoadModule php_module /usr/local/opt/php/lib/httpd/modules/libphp.so
Para M1: LoadModule php_module /opt/homebrew/opt/php/lib/httpd/modules/libphp.so
Nota: en php debemos agregar la versión que instalamos, en mi caso la ruta quedó así: LoadModule php_module /usr/local/opt/php@8.1/lib/httpd/modules/libphp.so porque instalé la versión 8.1.
Procedemos a editar el archivo httpd.conf:
sudo nano /usr/local/etc/httpd/httpd.conf // Para editarlo con VSCode sudo code /usr/local/etc/httpd/httpd.conf
La terminal nos pedirá la contraseña, la ingresamos para poder continuar.
Una vez abierto el archivo presionamos command + f y en el buscador que se abre escribimos listen, y buscamos estas líneas:
#Listen 12.34.56.78:80 Listen 8080
Y modificamos el 8080 por un 80, nos queda así:
#Listen 12.34.56.78:80 Listen 80
Luego en el buscador escribimos DocumentRoot y buscamos estas líneas:
# DocumentRoot "/usr/local/var/www" # <Directory "/usr/local/var/www">
Y modificamos las direcciones por las carpetas donde tenemos nuestros proyectos (debemos borrar las almohadillas que están al principio de cada línea):
DocumentRoot "/Users/miusuario/Documents/proyectos/miproyecto" <Directory "/Users/miusuario/Documents/proyectos/miproyecto">
Procedemos a escribir AllowOverride y buscamos estas línea:
# AllowOverride controls what directives may be placed in .htaccess files. # It can be "All", "None", or any combination of the keywords: # AllowOverride FileInfo AuthConfig Limit # AllowOverride None
Y cambiamos la palabra None por All:
# AllowOverride controls what directives may be placed in .htaccess files. # It can be "All", "None", or any combination of the keywords: # AllowOverride FileInfo AuthConfig Limit # AllowOverride All
Luego buscamos las líneas que digan LoadModule, vamos a encontrar muchas de estas así que nos ubicamos al principio de ellas, donde tenemos que ver algo como esto:
# Example: # LoadModule foo_module modules/mod_foo.so # #LoadModule mpm_event_module lib/httpd/modules/mod_mpm_event.so LoadModule mpm_prefork_module lib/httpd/modules/mod_mpm_prefork.so #LoadModule mpm_worker_module lib/httpd/modules/mod_mpm_worker.so LoadModule authn_file_module lib/httpd/modules/mod_authn_file.so
Como referencia: estas líneas están por debajo de donde modificamos el puerto de 8080 a 80.
Agregamos LoadModule php_module /usr/local/opt/php@8.1/lib/httpd/modules/libphp.so y nos queda así:
# Example: # LoadModule foo_module modules/mod_foo.so # #LoadModule mpm_event_module lib/httpd/modules/mod_mpm_event.so LoadModule php_module /usr/local/opt/php@8.1/lib/httpd/modules/libphp.so LoadModule mpm_prefork_module lib/httpd/modules/mod_mpm_prefork.so #LoadModule mpm_worker_module lib/httpd/modules/mod_mpm_worker.so LoadModule authn_file_module lib/httpd/modules/mod_authn_file.so
En el buscador escribimos rewrite_module y buscamos esta línea:
#LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so
Y simplemente quitamos la almohadilla que está al principio:
LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so
Continuamos con la búsqueda y ahora escribimos DirectoryIndex, debemos encontrar esto:
# DirectoryIndex: sets the file that Apache will serve if a directory # is requested. # <IfModule dir_module> DirectoryIndex index.html </IfModule>
Y agregamos index.php antes de index.html, nos queda así:
# DirectoryIndex: sets the file that Apache will serve if a directory # is requested. # <IfModule dir_module> DirectoryIndex index.php index.html </IfModule>
Ahora ya podríamos ejecutarlo, pero antes vamos a modificar otra cosa en este mismo archivo (porque a mi me dio el aviso “AH00558: httpd: Could not reliably determine the server's fully qualified domain name” cuando lo ejecuté), para ello escribimos ServerName y buscamos esta línea:
#ServerName www.example.com:8080
Y la modificamos para que quede así:
ServerName localhost
Bien, ahora vamos a la terminal para reiniciar PHP ejecutando:
brew services restart php // O bien brew services restart php@8.1
Continuamos iniciado el servidor Apache:
sudo apachectl -k start
Nos pedirá la contraseña así que la ingresamos. Si se inició correctamente no debería mostrar ningún mensaje y si ya estaba corriendo entonces mostrará un mensaje como esté: “httpd (pid 7743) already running”, pero no debemos preocuparnos. En todo caso podemos reiniciar el servidor con el siguiente comando:
sudo apachectl restart
Ahora vamos al navegador y en la barra de direcciones escribimos “localhost”. Si todo está bien deberíamos ver un mensaje en la pantalla que dice “It Works!”.
Excelente aporte! Tuve el mismo error que mencionaste y logré solucionarlo gracias a tu comentario :D
Para revisar qué versiones ya tienes instaladas puedes usar:
brew list | grep php
gracias
Muchas gracias!
Para los que presenten el problema de que en Mac M1 el archivo en sudo nano /usr/local/etc/httpd/httpd.conf esta vacio.
Utilzar la siguiente dirección
sudo nano /etc/apache2/httpd.conf
y si quieren editar en vs-code reemplzar nano por code
sudo code /etc/apache2/httpd.conf
Gracias, me salvaste!
Compañeros os comparto otra forma de tener un servidor php.
Navega por la terminal hasta donde tenga la carpeta de trabajo cd/aw/miTrabrajo/ dentro ejecutais php -S 127.0.0.1:8000 // listo
Da tu like si te ha servido
Alguien me pudiera ayudar.. ya configure como indica el profe pero me aparece así la pagina de localhost
Hola buenas tardes, como le diste solución a este error, tengo el mismo problema en el navegador no me arroja el resultado sin embargo en terminal si me arroja el resultado
Me pasaba algo muy tonto a mi, no habia reiniciado apache, si realizaste la configuración como indica el profe solo reinicia apache
Al momento de iniciar el servicio de Apache me salió el siguiente error:
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using ... . Set the 'ServerName' directive globally to suppress this message httpd (no pid file) not running
Para solucionarlo, hay que editar el archivo httpd.conf en dos ubicaciones:
sudo nano /etc/apache2/httpd.conf
Y en:
sudo nano /opt/homebrew/etc/httpd/httpd.conf
Buscamos con control + W ServerName y cambiamos
#ServerName www.example.com:8080
Por
ServerName 127.0.0.1
Muchas gracias hermano, tenía el mismo problema y ya le di solución con tu aporte.
Salud2
A mi con XAMPP me corria php, solo fue hacer este tutorial de instalación de php y no me funcionó ni esta instalación ni XAMPP, no hay alguien que de verdad me pueda ayudar; llevo haciendo preguntas y nadie colabora.
Guia 100% fiable para 2022 con M1 https://getgrav.org/blog/macos-monterey-apache-multiple-php-versions (no acentos)
Hola! seguí los pasos para la instalación, pero al ingresar a localhost, me imprime en pantalla welcome to de nginx! como puedo resolverlo???
Hola!!! Eso indicaría que tu servidor Nginx está corrrectamente funcionando, ¿Qué resultado esperabas obtener? ¿Por qué consideras que se trata de un error?
¡Hola! Tal cual te dijo Bulmaro, eso significa que tu servidor ya está funcionando 😎. Esa es la página por defecto que te da Nginx para que sepas que ya está funcionando, ahora simplemente debes empezar a poner todos tus archivos en la carpeta de Nginx para que se empiecen a tomar en cuenta :D
una pregunta ya tengo instalado brew y php, pero no me haber el http.conf ¿Que podría ser?
me pasa lo mismo, encontraste solucion?
Encontré la solución! (Al menos a mí me funcionó)
La ruta es la siguiente:
sudo nano /opt/homebrew/etc/httpd/httpd.conf
Espero que te sirva!
¿Como se puede solucionar el error 403 "Forbidden. You don't have permission to access this resource. " Ya que he revisado varias veces el documento y los cambios indicados en la clase y aun persiste el error.
yo tengo el mismo problema ahora. que se puede hacer
Estoy con ese error también!
Hola Me gustaria compartirles una extención que les servira para montar su servidor con un solo click
La instalan, crean su proyecto, abren el archivo index.php le dan click derecho en cualquier parte del codigo y le dan la opción de ServeProject, hasta la fecha solo lo he probado en M1 MAC
Hola, ya tengo instalada esa extension en Visual Studio Code, igual hay que hacer lo que el profe dice en el video?
Es recomendado hacerlo
quien mas lo leyó con el carisma de RetaxMaste ???
Hola!! ya tengo instalada las versiones de php pero al poner el comando /usr/local/etc/httpd/httpd.conf Me sale permiso denegado. Que me falta? soy nueva en php, no entiendo nada jajaj
Forbidden
You don't have permission to access this resource.
No encuentro como solucionarlo, por favor me ayudáis?
A mi también me sale esto
Me sale este error al cargar el localhost: Forbidden You don't have permission to access this resource.Server unable to read htaccess file, denying access to be safe
Tengo este error al final:
Investigando en internet resolvi con esto:
brew reinstall php no se si realmente funciono. La verdad no se porque, amaría saber el porque.
¡Hola! ¿Al final te funcionó? ¿Puedes verificar si después de reinstalar aún está escrita la linea de LoadModule php_module /usr/local/opt/php/lib/httpd/modules/libphp.so? 🤔
Siendo sincero, yo no me complique tanto y termine instalando MAMP, ¿esta mal? pero debo aceptar que este método es un poco mas engorroso.
Eso hice, gracias a tu recomendacion