Cómo publicar un sitio web PHP (instalar secuencias de comandos de CodeCanyon)
Publicado: 2020-11-26En caso de que haya comprado un script PHP de Codecanyon y quiera instalarlo, o tal vez sea un desarrollador de PHP y quiera aprender a publicar un sitio web PHP en línea, entonces está en el lugar correcto.️
En esta guía, cubriré lo siguiente:
- Requisitos
- Obtenga un nombre de dominio.
- Obtenga un servidor VPS.
- Asignar IP del servidor al dominio.
- Cree una base de datos MySQL para su aplicación.
- Subir archivo al servidor usando WinSCP.
- Instalación de módulos PHP.
- Manejo de bases de datos MySQL.
- Configurar trabajos cron.
Requisitos para publicar un sitio web PHP.
Lo que necesitas es simplemente es:
- Un servidor VPS para instalar su PHP Script.
- Nombre de dominio para usar con nuestra configuración.
1. Obtenga un nombre de dominio para publicar un sitio web PHP.
Conseguir un Dominio es tan sencillo como comerse un trozo de tarta de chocolate. debe ir a cualquier compañía de registro de dominios como Godaddy , Hostinger , Enom, Freenom, Namecheap …. y Compre un Nombre de Dominio, incluso puede obtener uno por 1$ al año.
Recomiendo obtener un nombre de dominio que refleje su negocio. y si ya tiene uno, como creo, puede omitir esto y continuar obteniendo un servidor VPS.
Mire este video de 3 minutos y vea cómo obtener y comprar un nombre de dominio de Godaddy:
2. Obtenga un servidor VPS.
Ahora, hagamos que nuestro servidor VPS configure nuestro PHP Script .
¿Qué es un servidor VPS?
Cuando desea publicar un sitio web o script PHP o cualquier aplicación web, hacemos lo que llamamos " alojamiento web ", que simplemente significa cargar los archivos y la base de datos en un servidor público para que pueda accederse a ellos en línea a través de Internet.
Opciones de alojamiento.
Ahora, cuando desee alojar una aplicación web (WordPress en nuestro escenario), tiene principalmente 2 opciones:
Alojamiento Compartido:
Lo que significa publicar su sitio web en servicios de alojamiento como Godaddy, Bluehost, Hostinger... donde su sitio web se alojará con cientos de otros sitios web en el mismo servidor .
Alojamiento VPS
En esta configuración, alojará su sitio web en su propio servidor, ¡así que tendrá un servidor solo para usted! que se llama un VPS o un servidor privado virtual .
¿Cuál es mejor?
No quiero profundizar ahora y explicar cosas técnicas, pero en algunos trabajos, VPS es definitivamente mejor donde tendrá su propio servidor con total capacidad de administración y mejor rendimiento.
Y si crees que el hosting triturado es mucho más barato, estás equivocado, ya que con los servicios VPS de Contabo puedes empezar con solo 3,99 € al mes, que es el mismo precio para casi el 90% de los servicios de hosting compartido.
Tal vez el único inconveniente aquí es que requiere algunas habilidades técnicas más para instalar y configurar, pero afortunadamente, está aquí en la guía paso a paso, ¡donde verá cómo las cosas serán realmente fáciles!
¿Qué compañía debo usar?
Puedes usar cualquier compañía que quieras para comprar un servidor VPS , en esta guía compartiré contigo dos compañías que creo que tienen todo lo que necesitas y con los precios más baratos. y uso para ejecutar más de 10 servidores para mi negocio.
Estas empresas son: Contabo & Digital Ocean.
Pero como te dije, depende de ti, puedes usar cualquier compañía con la que te sientas cómodo. también puede ir con Hostinger, que también ofrece un precio muy bueno en comparación con otras compañías.
Nota: En este tutorial: usaré Contabo
Entonces, veamos cómo podemos obtener un servidor VPS de Contabo.
Obtenga un servidor VPS de Contabo.
1: Abra el sitio web de Contabo.
Abra su navegador web y vaya a la página de Contabo VPS.
Verá la configuración de múltiples VPS para comenzar. Simplemente puedes empezar con la opción más económica de Instalar WordPress, será más que suficiente.
Más adelante, cuando haga crecer su negocio, puede escalar y obtener un VPS más potente con mayores recursos.
2: Establecer opciones de VPS
En la página siguiente, deberá seleccionar algunas opciones
En la opción de sistema operativo , seleccione Ubuntu 18.04
Luego, en el Panel de administración, seleccione LAMP
Y la última opción, en los complementos, marque "DNS inverso individual"
Si fue promovido para ingresar al registro PTR, ingrese su nombre de dominio y eso es todo.
Ahora, simplemente continúe con la página de facturación y confirme su pedido. Creo que otros pasos son simples y se explican por sí mismos.
En 24 horas, el equipo de Contabo configurará el servidor y enviará los detalles a su correo electrónico de la siguiente manera:
Para Océano Digital.
Si desea ir con Digital Ocean, simplemente regístrese a través del enlace de cupón a continuación para obtener 100 $ gratis para probar todo gratis.
Y después de registrarse en Digital Ocean, simplemente cree un Droplet con las siguientes especificaciones:
- Ubuntu 16/18/20 x64 como sistema operativo.
- Puede comenzar con 1 CPU/ 1 GB de RAM (puede cambiar el tamaño más adelante).
¡Genial! Tienes tu servidor. ️
Compruebe también:
3. Asigne el nombre de dominio a su servidor VPS.
Ok amigo, ahora tenemos un dominio y un servidor VPS. ¡Pero no están conectados!
Se puede acceder a su servidor VPS ahora a través de la dirección IP que Contabo Team le envió por correo electrónico. pero por supuesto, ¡no queremos acceder a nuestro sitio web de WordPress a través de una IP! queremos usar nuestro nombre de dominio.
Simplemente, vamos a asignar el nombre de dominio a la IP de nuestro VPS, luego accedemos al VPS y al sitio web de WordPress a través del dominio y la IP.
Configure sus registros DNS:
Simplemente abra la zona de administración de DNS en su proveedor de dominio (Godaddy en mi caso) y edite el registro A principal de esta manera:
anfitrión: @ puntos: TU SERVIDOR IP .
¿Hecho? ¡Genial! ️
4. Cree una base de datos MySQL para su aplicación.
Para publicar un sitio web PHP, la mayoría de los scripts y aplicaciones PHP requerirán una base de datos MySQL. Así que vamos a crear uno.
Conéctese a su servidor VPS usando cualquier cliente SSH como PuTTY. y ¡Empecemos!
Simplemente abra Putty e ingrese la IP o el nombre del servidor, y presione Abrir.
Le pedirá que inicie sesión, simplemente ingrese "root" como usuario, luego ingrese su contraseña que se le envía por correo electrónico.
Nota: mientras escribe la contraseña, Putty ahora la mostrará por razones de seguridad, pero está ahí, ¡simplemente escríbala!
¡Y estás dentro!
Lo bueno es que ya tenemos MySQL instalado como parte de LAMP Stack, pero necesitamos crear una base de datos y un usuario para nuestra aplicación.
Para comenzar, inicie sesión en la cuenta raíz (administrativa) de MySQL emitiendo este comando:
mysql -u raíz -p
Se le pedirá la contraseña de root, simplemente escríbala o péguela y presione Entrar.
Primero, cree una base de datos separada que usará su aplicación PHP. Puede llamarlo como quiera, pero usaremos TestDb en esta guía para mantenerlo simple. Cree la base de datos ejecutando este comando:
CREAR BASE DE DATOS TestDb CONJUNTO DE CARACTERES POR DEFECTO utf8 COLLATE utf8_unicode_ci ;
Nota: Cada declaración de MySQL debe terminar en un punto y coma (;)
A continuación, vamos a crear una cuenta de usuario de MySQL separada que usaremos exclusivamente para operar en nuestra nueva base de datos. Crear bases de datos y cuentas de una sola función es una buena idea desde el punto de vista de la administración y la seguridad. Usaremos el nombre DbUser en esta guía. Siéntase libre de cambiar esto si lo desea.
Vamos a crear esta cuenta, establecer una contraseña y otorgar acceso a la base de datos que creamos. Podemos hacer esto escribiendo el siguiente comando. Recuerde elegir una contraseña segura aquí para el usuario de su base de datos:
CREAR USUARIO 'DbUser'@'localhost' IDENTIFICADO POR 'enter_a_custom_password_here';
GRANT ALL ON TestDb.* TO 'DbUser'@'localhost';
Ahora tiene una base de datos y una cuenta de usuario, cada una creada específicamente para su aplicación PHP. Necesitamos vaciar los privilegios para que la instancia actual de MySQL conozca los cambios recientes que hemos realizado:
FLUSH PRIVILEGES;
Salga de MySQL escribiendo:
EXIT;
¡Hecho! ️
5. Cargue los archivos de script en el servidor.
Para cargar los archivos, necesita una aplicación llamada WinSCP.
Es una herramienta gratuita y puedes descargarla desde aquí.
Conéctese a su servidor VPS usando WinSCP y actualice los archivos PHP al servidor a esta ruta: “/var/www/html”
En la mayoría de los casos, los archivos estarían comprimidos, por lo que debemos extraerlos.
Nuevamente a Putty SSH CLient e instalemos la utilidad de descompresión usando el siguiente comando:
sudo apt-get install descomprimir
Borre la pantalla de masilla para hacerla limpia usando el siguiente comando:
claro
Cambie el directorio a /var/www/html usando el siguiente comando:
cd /var/www/html
Descomprima el archivo “.zip” usando el siguiente comando:
descomprimir TU NOMBRE DE ARCHIVO*.zip
*Nota: el nombre del archivo puede ser diferente en su caso, así que reemplace SU NOMBRE DE ARCHIVO con su nombre de archivo.
Ahora, mueva el contenido de la carpeta más reciente al directorio superior para que se pueda acceder directamente -> use WinSCP
Simplemente copie todos los archivos dentro de la carpeta "SU NOMBRE DE ARCHIVO" y péguelos directamente en la carpeta html.
Archivos subidos. ¡Hecho! ️
6. Instalación de módulos PHP para publicar un sitio web PHP (opcional)
Algunas aplicaciones PHP requerirán algunos módulos PHP adicionales en su servidor (esto se mencionará en la documentación de la aplicación)
Para instalar módulos PHP adicionales:
Abra Putty y ejecute los siguientes comandos para instalar módulos PHP:
sudo apt install php-curl sudo apt install php-mbstring sudo apt install php- ejemplo ......
*Reinicie el servicio de apache usando el siguiente comando:
reinicio del servicio sudo apache2
¡Hecho! ️
7. Configure Apache para publicar un sitio web PHP
Bien hecho, ahora sus archivos están cargados y colocados en la carpeta html, solo necesitamos configurar apache para que podamos publicar nuestro sitio web PHP y acceder a nuestro script usando nuestro nombre de dominio. Para hacerlo, abra WinSCP nuevamente y navegue a este directorio: /etc/apache2/sites-disponible/
Ahora, crea un nuevo archivo vacío y asígnale el nombre " tudominio.conf ". Puede reemplazar "Scriptname" con cualquier nombre que desee (a continuación se muestra un ejemplo nombrándolo mautic.conf).
Abra yourdomain.conf Luego copie y pegue el contenido a continuación en el archivo y guárdelo.
<Host virtual *:80> ServerAdmin admin@TUNOMBRE DE DOMINIO Raíz del documento /var/www/html Nombre del servidor YOUDOMAINNAME ServerAlias YOUDOMAINNAME <Directorio /var/www/html/> Opciones +Seguir enlaces simbólicos Permitir anular todo Requerir todo concedido </Directorio> Registro de errores ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combinado </HostVirtual>
Reemplace con su propio dominio, en mi caso es "SUNOMBRE DE DOMINIO"
Habilite la configuración de su script en apache y reinicie el servicio.
Ahora simplemente, ejecute los siguientes comandos para finalizar la configuración:
sudo a2ensite sudominio.conf sudo a2enmod reescribir sudo systemctl reiniciar apache2.servicio
¡ESTUPENDO! Estas casi listo
8. Conéctese a la base de datos MySQL.
Abra su navegador web ahora y navegue hasta el nombre de su servidor.
Debe ver el asistente de finalización de configuración a continuación:
Continúe con la configuración ingresando la información de la base de datos y su información de inicio de sesión de administrador. En nuestro ejemplo, el nombre de la base de datos es TestDb y el usuario es DBUser con la contraseña establecida.
¡Así de sencillo! Consulte el siguiente ejemplo de un script similar.
Conectarse a la base de datos. ¡Hecho! ️
9. Configurar trabajos cron.
¿Qué son los cronjobs?
cron es una utilidad de Linux que programa un comando o secuencia de comandos en su servidor para que se ejecute automáticamente en una fecha y hora específicas. Un trabajo cron es la tarea programada en sí. Los trabajos cron pueden ser muy útiles para automatizar tareas repetitivas.
Por ejemplo, puede configurar un trabajo cron para eliminar archivos temporales cada semana para conservar su espacio en disco. Algunas aplicaciones web de PHP pueden requerir que configure un trabajo cron para realizar ciertas funciones.
Configurar trabajos cron.
Para configurar cronjobs, debe agregar todos los trabajos necesarios al servidor. Esto depende de su secuencia de comandos, por lo que si compró una secuencia de comandos de Code Canyon, el propietario de la secuencia de comandos debe proporcionar los cronjobs.
Para hacer esto, abra WinSCP y acceda a /etc.
Abra el archivo crontab usando el editor
Y pegue todos los trabajos de su script en esta carpeta. (los cronjobs se enumeran en la documentación de la aplicación)
Asegúrese de que cada trabajo esté en una línea y una línea vacía al final.
Cronjobs. ¡Hecho! ️
10. Seguro con un SSL gratuito.
Los certificados SSL se utilizan en los servidores web para cifrar el tráfico entre el servidor y el cliente, lo que brinda seguridad adicional a los usuarios que acceden a su aplicación. Let's Encrypt proporciona una manera fácil de obtener e instalar certificados de confianza de forma gratuita .
Conéctese a su servidor usando el cliente Putty SSH. y ¡Empecemos!
Paso 1: Instale el cliente de Let's Encrypt
Los certificados de Let's Encrypt se obtienen a través del software cliente que se ejecuta en su servidor. El cliente oficial se llama Certbot .
Primero, agregue el repositorio para instalar Certbot:
sudo add-apt-repositorio ppa:certbot/certbot
Deberá presionar ENTER
para aceptar.
Luego, actualice la lista de paquetes para recoger la información del paquete del nuevo repositorio:
sudo apt-obtener actualización
Instale el paquete Apache de Certbot:
sudo apt install python-certbot-apache
Certbot ahora está listo para ser utilizado.
Paso 2: configurar el certificado SSL
Generar el certificado SSL para Apache usando Certbot es bastante sencillo. El cliente obtendrá e instalará automáticamente un nuevo certificado SSL válido para los dominios proporcionados como parámetros.
Simplemente ejecute el siguiente comando: (cambiar el dominio)
sudo certbot --apache -d TU_DOMINIO_NOMBRE
Se le pedirá que proporcione una dirección de correo electrónico para la recuperación de claves perdidas y avisos, y podrá elegir entre habilitar el acceso http
y https
o forzar todas las solicitudes para redirigir a https
. Por lo general, es más seguro solicitar https
, a menos que tenga una necesidad específica de tráfico http
sin cifrar.
¡Eso es todo!
Pruebe su sitio web ahora y debería estar cifrado con SSL.
¡Hecho! ️