Diferencia entre revisiones de «PHP Instalación Apache»

De MediaWiki
Ir a la navegación Ir a la búsqueda
 
(No se muestran 17 ediciones intermedias de 2 usuarios)
Línea 8: Línea 8:
  
 
* Para instalar Apache podemos optar por:
 
* Para instalar Apache podemos optar por:
−
:* Instalar un paquete de software denominado XAMPP. Dito paquete xa trae consigo o servidor web Apache, o soporte para PHP e un xestor de base de datos Mysql.
+
:* Instalar un paquete de software denominado XAMPP (LAMPP para Linux). Dito paquete xa trae consigo o servidor web Apache, o soporte para PHP e un xestor de base de datos Mysql.
 
:* Instalar o servidor web Apache.
 
:* Instalar o servidor web Apache.
  
 +
: Elixiremos unha das dúas opcións...
  
−
:: Elixiremos unha das dúas opcións...
+
<u>Nota:</u> Se queremos non temos porque instalar o servidor Web Apache se imos traballar có IDE Netbeans, xa que este utiliza unha característica de PHP para ter un servidor web propio. Necesitaremos instalar PHP.
  
 
== Instalación do Lampp ==
 
== Instalación do Lampp ==
Línea 23: Línea 24:
  
 
:# Descargar a versión que nos interese dende [https://www.apachefriends.org/download.html este enlace].
 
:# Descargar a versión que nos interese dende [https://www.apachefriends.org/download.html este enlace].
−
:# Descomprimir o arquivo baixado coa orde: '''sudo tar xvfz xampp-linux-1.8.0.tar.gz -C /opt'''.
+
:# Otorgamos permisos de execución ao arquivo .run descargado: sudo chmod +x xampp-linux-x64-8.2.12-0-installer.run
 +
:# Executamos o arquivo: sudo ./xampp-linux-x64-8.2.12-0-installer.run
  
−
* Unha vez descargado podemos iniciar Lampp (inicia o servidor web e o mysql) coa orde: '''sudo /opt/lampp/lampp start'''.
+
* Os arquivos quedarán descargados en /opt/lampp
 +
: Unha vez descargado podemos iniciar Lampp (inicia o servidor web e o mysql) coa orde: '''sudo /opt/lampp/lampp start''' ou parar o servizo coa orde: '''sudo /opt/lampp/lampp stop'''
  
 
<br />
 
<br />
Línea 40: Línea 43:
 
* Nunha consola de comandos executaremos:
 
* Nunha consola de comandos executaremos:
  
−
:<syntaxhighlight lang="java" line enclose="div" highlight="" >
+
:<syntaxhighlight lang="java" enclose="div" highlight="" >
 
sudo apt-get update
 
sudo apt-get update
 
sudo apt-get install apache2
 
sudo apt-get install apache2
Línea 51: Línea 54:
 
* Por defecto apache vai buscar as páxinas que se atopan no cartafol: '''/var/www/html'''.
 
* Por defecto apache vai buscar as páxinas que se atopan no cartafol: '''/var/www/html'''.
  
 +
== Instalación do PHP==
 +
 +
* Debedes cambiar o número de versión polo que vos interese.
 +
: Para instalar o PHP podemos facer uso do repositorio Ondřej Surý:
 +
 +
:<syntaxhighlight lang="java" enclose="div" highlight="" >
 +
sudo apt update
 +
 +
sudo apt install -y \
 +
    ca-certificates \
 +
    software-properties-common
 +
 +
sudo add-apt-repository -y ppa:ondrej/php
  
−
== Instalación do PHP==
+
sudo apt update
 +
 
 +
 
 +
</syntaxhighlight>
 +
 
 +
:<syntaxhighlight lang="java" enclose="div" highlight="" >
 +
sudo apt install -y \
 +
    php8.5 \
 +
    libapache2-mod-php8.5
 +
</syntaxhighlight>
 +
 
 +
: Neste curso impartiremos Laravel, polo que xa podemos instalar os módulos que se necesitan:
 +
 
 +
:<syntaxhighlight lang="java" enclose="div" highlight="" >
 +
sudo apt install \
 +
    php8.5-cli \
 +
    php8.5-mysql \
 +
    php8.5-xml \
 +
    php8.5-mbstring \
 +
    php8.5-curl \
 +
    php8.5-zip \
 +
    php8.5-bcmath \
 +
    php8.5-sqlite3 \
 +
    php8.5-intl
 +
</syntaxhighlight>
 +
 
 +
 
 +
: Unha vez instalada temos que habilitar a extensión php e reiniciar o apache:
 +
:<syntaxhighlight lang="java" enclose="div" highlight="" >
 +
sudo a2enmod php8.5
 +
sudo systemctl restart apache2
 +
</syntaxhighlight>
  
−
* Para instalar o PHP escribiremos o seguinte nunha consola:
 
  
 +
: Nota: Se <u>temos algunha version anterior</u> teremos que inhabilitala. Para iso podemos ver que módulos temos instalados con:
 +
:<syntaxhighlight lang="java" line enclose="div" highlight="" >
 +
ls -l /etc/apache2/mods-enabled/php*
 +
</syntaxhighlight>
 +
: E dependendo da saída podemos inhabilitar as versións anteriores (son uns exemplos):
 
:<syntaxhighlight lang="java" line enclose="div" highlight="" >
 
:<syntaxhighlight lang="java" line enclose="div" highlight="" >
−
sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt php5-cli
+
sudo a2dismod php8.1
 +
sudo a2dismod php8.2
 
</syntaxhighlight>  
 
</syntaxhighlight>  
 +
 +
  
 
* Actualizaremos o arquivo dir.conf e engadiremos index.php ao principio:  
 
* Actualizaremos o arquivo dir.conf e engadiremos index.php ao principio:  
Línea 66: Línea 120:
 
         DirectoryIndex index.php index.html index.cgi index.pl index.php index.xhtml index.htm
 
         DirectoryIndex index.php index.html index.cgi index.pl index.php index.xhtml index.htm
 
</IfModule>
 
</IfModule>
 +
</syntaxhighlight>
  
  
−
</syntaxhighlight>
+
* Reiniciamos o servizo:
−
 
+
:<syntaxhighlight lang="java" line enclose="div" highlight="" >
 +
sudo service apache2 restart
 +
</syntaxhighlight>  
  
 
* Para comprobar se está ben instalado podemos crear un arquivo: '''/var/www/html/index.php'''
 
* Para comprobar se está ben instalado podemos crear un arquivo: '''/var/www/html/index.php'''
Línea 88: Línea 145:
  
 
* Php ten a posibilidade de instalar 'módulos' para ampliar as súas funcionalidades.
 
* Php ten a posibilidade de instalar 'módulos' para ampliar as súas funcionalidades.
−
* Para obter a lista de módulos: '''sudo apt-cache search php5-'''
+
* Para obter a lista de módulos: '''sapt-cache search php8.5-'''
 
* Para instalar un dos módulos da lista: '''sudo apt-get install nome_do_modulo'''
 
* Para instalar un dos módulos da lista: '''sudo apt-get install nome_do_modulo'''
  
 
<br/>
 
<br/>
  
−
* No noso caso é necesario instalar o módulo '''php5-gd'''. Escribiremos o seguinte código:
+
* Por exemplo o módulo '''php5-gd''' para manexo de imaxes (redimensionar,...) escribiríamos o seguinte código:
  
 
:<syntaxhighlight lang="java" line enclose="div" highlight="" >
 
:<syntaxhighlight lang="java" line enclose="div" highlight="" >
−
sudo apt-get install php5-gd
+
sudo apt-get install php8.5-gd
−
sudo service apache2 restart
+
sudo systemctl restart apache2
 +
</syntaxhighlight>
 +
 
 +
 
 +
: Se queremos ver os módulos cargados:
 +
 
 +
:<syntaxhighlight lang="java" line enclose="div" highlight="" >
 +
php -m
 
</syntaxhighlight>
 
</syntaxhighlight>
  
  
 +
 +
* Unha vez instalados podemos habilitalos ou deshabilitalos empregando a orde '''a2enmod''' ou '''a2dismod'''.
 +
: No caso de querer empregar Laravel (que vai ser necesario neste curso) necesitamos activar un módulo que xa está descargado por apache.
 +
: Dito módulo é o '''mod_rewrite''' que permite que url's có formato https://www.mistio.es/productos/1 sexan correctamente interpretados (apache intentaría buscar o cartafol /productos/ dentro do sitio web, pero para Laravel é un dato)
 +
:<syntaxhighlight lang="java" line enclose="div" highlight="" >
 +
sudo a2enmod rewrite
 +
sudo systemctl restart apache2
 +
</syntaxhighlight>
  
 
== Activación na visualización dos erros en PHP ==
 
== Activación na visualización dos erros en PHP ==
Línea 113: Línea 185:
  
 
* A localización do arquivo é:
 
* A localización do arquivo é:
−
:* Se estades a utilizar Apache => '''/etc/php5/apache2/php.ini'''
+
:* Se estades a utilizar Apache => '''/etc/php/8.5/apache2/php.ini'''
−
:* Se estados a utilizar LAMPP => '''/etc/php5/cli/php.ini'''
+
:* Se estados a utilizar LAMPP => '''/etc/php/8.5/cli/php.ini'''
  
 
: Dita localización pode variar en función da versión de PHP instalada.
 
: Dita localización pode variar en función da versión de PHP instalada.
Línea 123: Línea 195:
 
* Unha vez localizado o arquivo teredes que editalo cun editor (e permisos administrativos). O podedes facer coa orde:
 
* Unha vez localizado o arquivo teredes que editalo cun editor (e permisos administrativos). O podedes facer coa orde:
 
:<syntaxhighlight lang="java" line enclose="div" highlight="" >
 
:<syntaxhighlight lang="java" line enclose="div" highlight="" >
−
nano /etc/php5/apache2/php.ini
+
sudo nano /etc/php/8.5/apache2/php.ini
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Línea 131: Línea 203:
  
 
:<syntaxhighlight lang="java" line enclose="div" highlight="" >
 
:<syntaxhighlight lang="java" line enclose="div" highlight="" >
−
sudo service apache2 restart
+
sudo systemctl restart apache2
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Línea 138: Línea 210:
 
<u>Nota:</u> Lembrar que esta opción só é aconsellable durante o desenvolvemento da aplicación. Despois deberedes deixalo como estaba.
 
<u>Nota:</u> Lembrar que esta opción só é aconsellable durante o desenvolvemento da aplicación. Despois deberedes deixalo como estaba.
  
−
<br> -- [[Usuario:angelfg|Ángel D. Fernández González]] -- (2016).
+
<br> -- [[Usuario:angelfg|Ángel D. Fernández González]] -- (2025).

Revisión actual del 17:48 7 sep 2026

Introdución

  • Para poder traballar con PHP é necesario dispor de un servidor Web con soporte de PHP.
  • Unha vez instalado Apache teremos que instalar o módulo que nos da soporte para poder cargar páxinas PHP.
  • Para instalar Apache podemos optar por:
  • Instalar un paquete de software denominado XAMPP (LAMPP para Linux). Dito paquete xa trae consigo o servidor web Apache, o soporte para PHP e un xestor de base de datos Mysql.
  • Instalar o servidor web Apache.
Elixiremos unha das dúas opcións...

Nota: Se queremos non temos porque instalar o servidor Web Apache se imos traballar có IDE Netbeans, xa que este utiliza unha característica de PHP para ter un servidor web propio. Necesitaremos instalar PHP.

Instalación do Lampp

  • É a versión Linux dun paquete denominado XAMPP.
  • Unha vez instalado teremos de vez: Servidor Web Apache, servidor de base de datos Mysql, PHP e Perl.
  • Para instalalo teremos que:
  1. Descargar a versión que nos interese dende este enlace.
  2. Otorgamos permisos de execución ao arquivo .run descargado: sudo chmod +x xampp-linux-x64-8.2.12-0-installer.run
  3. Executamos o arquivo: sudo ./xampp-linux-x64-8.2.12-0-installer.run
  • Os arquivos quedarán descargados en /opt/lampp
Unha vez descargado podemos iniciar Lampp (inicia o servidor web e o mysql) coa orde: sudo /opt/lampp/lampp start ou parar o servizo coa orde: sudo /opt/lampp/lampp stop


  • Se queremos ver o estado dos servidores podemos executar a orde: sudo /opt/lampp/manager-linux-x64.run &.
Aparecerá a seguinte pantalla onde debemos ter iniciados os servizos de Apache e Mysql.
Drupal instalacion mysql 1.jpg

Instalación do Apache


  • Nunha consola de comandos executaremos:
sudo apt-get update
sudo apt-get install apache2


  • Unha vez instalado aparecerá a seguinte pantalla se no navegador de Internet escribimos na URL: http://localhost.
Drupal instalacion apache 1.jpg
  • Por defecto apache vai buscar as páxinas que se atopan no cartafol: /var/www/html.

Instalación do PHP

  • Debedes cambiar o número de versión polo que vos interese.
Para instalar o PHP podemos facer uso do repositorio Ondřej Surý:
sudo apt update

sudo apt install -y \
    ca-certificates \
    software-properties-common

sudo add-apt-repository -y ppa:ondrej/php

sudo apt update
sudo apt install -y \
    php8.5 \
    libapache2-mod-php8.5
Neste curso impartiremos Laravel, polo que xa podemos instalar os módulos que se necesitan:
sudo apt install \
    php8.5-cli \
    php8.5-mysql \
    php8.5-xml \
    php8.5-mbstring \
    php8.5-curl \
    php8.5-zip \
    php8.5-bcmath \
    php8.5-sqlite3 \
    php8.5-intl


Unha vez instalada temos que habilitar a extensión php e reiniciar o apache:
sudo a2enmod php8.5
sudo systemctl restart apache2


Nota: Se temos algunha version anterior teremos que inhabilitala. Para iso podemos ver que módulos temos instalados con:
1 ls -l /etc/apache2/mods-enabled/php*
E dependendo da saída podemos inhabilitar as versións anteriores (son uns exemplos):
1 sudo a2dismod php8.1
2 sudo a2dismod php8.2


  • Actualizaremos o arquivo dir.conf e engadiremos index.php ao principio:
sudo nano /etc/apache2/mods-enabled/dir.conf
1 <IfModule mod_dir.c>
2         DirectoryIndex index.php index.html index.cgi index.pl index.php index.xhtml index.htm
3 </IfModule>


  • Reiniciamos o servizo:
1 sudo service apache2 restart
  • Para comprobar se está ben instalado podemos crear un arquivo: /var/www/html/index.php
1 <?php
2 phpInfo();
3 ?>
E cargar a páxina dende o navegador escribindo na URL: http://localhost/index.php.
Obteremos o seguinte:
Drupal instalacion php 1.jpg

Módulos en PHP

  • Php ten a posibilidade de instalar 'módulos' para ampliar as súas funcionalidades.
  • Para obter a lista de módulos: sapt-cache search php8.5-
  • Para instalar un dos módulos da lista: sudo apt-get install nome_do_modulo


  • Por exemplo o módulo php5-gd para manexo de imaxes (redimensionar,...) escribiríamos o seguinte código:
1 sudo apt-get install php8.5-gd
2 sudo systemctl restart apache2


Se queremos ver os módulos cargados:
1 php -m


  • Unha vez instalados podemos habilitalos ou deshabilitalos empregando a orde a2enmod ou a2dismod.
No caso de querer empregar Laravel (que vai ser necesario neste curso) necesitamos activar un módulo que xa está descargado por apache.
Dito módulo é o mod_rewrite que permite que url's có formato https://www.mistio.es/productos/1 sexan correctamente interpretados (apache intentaría buscar o cartafol /productos/ dentro do sitio web, pero para Laravel é un dato)
1 sudo a2enmod rewrite
2 sudo systemctl restart apache2

Activación na visualización dos erros en PHP

  • Cando esteamos a desenvolver código PHP vai ser moi habitual que as páxinas non amosen o que en principio pretendemos por algún erro no código.
A diferenza das linguaxes de programación de aplicacións de escritorio (tipo Java, VB.NET,...) o navegador non vai informar do erro.
Durante a fase de desenvolvemento pode ser interesante ter activada a directiva que fai amosar os erros atopados no código no navegador.
Para iso hai que modificar o arquivo php.ini
  • A localización do arquivo é:
  • Se estades a utilizar Apache => /etc/php/8.5/apache2/php.ini
  • Se estados a utilizar LAMPP => /etc/php/8.5/cli/php.ini
Dita localización pode variar en función da versión de PHP instalada.
Para saber onde se atopa podedes velo na páxina onde chamastes á función phpinfo() do punto anterior, na liña Loaded confuguration file.
Drupal instalacion php 1.jpg
  • Unha vez localizado o arquivo teredes que editalo cun editor (e permisos administrativos). O podedes facer coa orde:
1 sudo nano /etc/php/8.5/apache2/php.ini
Debedes buscar a liña: display_errors = Off e cambiala a display_errors = On
  • Unha vez feito, reiniciade o servizo:
1 sudo systemctl restart apache2


Nota: Lembrar que esta opción só é aconsellable durante o desenvolvemento da aplicación. Despois deberedes deixalo como estaba.


-- Ángel D. Fernández González -- (2025).