![translation](https://cdn.durumis.com/common/trans.png)
Dit is een door AI vertaalde post.
[php] Codeigniter 4 instellen op Ubuntu
- Taal van de tekst: Koreaans
- •
-
Referentieland: Alle landen
- •
- Informatietechnologie
Selecteer taal
Samengevat door durumis AI
- Dit document beschrijft de probleemoplossing die ik heb ervaren tijdens het installeren van Codeigniter 4 op een ontwikkelserver.
- Nadat ik Apache2 en PHP 7 had geïnstalleerd, heb ik de Codeigniter 4-frameworkbestanden gedownload en de projectbestanden naar Apache2 geüpload.
- Door middel van het instellen van de bestandsmachtigingen, het installeren van de vereiste PHP-extensies en het wijzigen van het php.ini-bestand heb ik de fouten opgelost en het startscherm van Codeigniter 4 correct weergegeven.
CodeIgniter 4.
Ik kreeg de kans om een nieuw project op het werk te doen. Sinds ik begon, gebruikte de bestaande webpagina CodeIgniter 3, dus ik besloot om CodeIgniter 4 te gebruiken, half uit nieuwsgierigheid, half uit verwachting.
De eerste stap is het instellen van een ontwikkelserver. Dit document is gemaakt om mijn worstelingen(?) te documenteren terwijl ik Codeigniger 4 op de ontwikkelserver installeerde.
Het besturingssysteem van de ontwikkelserver is getest met Ubuntu 20.04.2
Ik had Apache2 en php 7 al geïnstalleerd, dus ik downloadde het Codeigniter 4 (hierna CI4) frameworkbestand.
Ga naar de bovenstaande URL en klik op CI4 Download om het frameworkbestand te downloaden. Het heeft standaard PHP 7.3 of hoger nodig.
Als je het uitpakt, zie je de bestanden zoals in het bovenstaande scherm. De CI-versie die ik heb gebruikt voor testen is 4.1.3.
Upload nu het gedownloade projectbestand naar Apache2.
Ik heb het project omgedoopt tot ci4 voor testdoeleinden en het geüpload. Om te controleren of het correct werkt, ga ik naar localhost(of adres)/public/index.php.
Ik zie meteen een foutscherm.
Dit was eigenlijk het begin van de worstelingen. In mijn geval leek het erop dat de bestandsmachtigingen en PHP-extensies niet waren geïnstalleerd. Laten we eerst de machtigingen van de /writable-map in het projectbestand wijzigen.
sudo chmod -R 777 writable
Ten tweede moeten we de vereiste PHP-extensies installeren. De vereiste extensies zijn curl, intl, mbstring en xml, vier in totaal. Op de server die ik al gebruik, zijn ze mogelijk al geïnstalleerd, maar omdat ik een nieuwe server instel, moet ik ze een voor een installeren.
sudo apt-get install php-curl
sudo apt-get install php-intl
sudo apt-get install php-mbstring
sudo apt-get install php-xml
Voer de bovenstaande opdrachten een voor een uit om de benodigde extensies te installeren.
Als laatste moeten we de opmerkingen voor de curl- en intl-extensies in het php.ini-bestand verwijderen.
sudo nano /etc/php/7.4/apache2/php.ini
De locatie van het php.ini-bestand kan variëren afhankelijk van de serveromgeving. Voer de bovenstaande opdracht uit om toegang te krijgen tot het php.ini-bestand in bewerkingmodus.
;extension=bz2
extension=curl
;extension=ffi
;extension=ftp
;extension=fileinfo
;extension=gd2
;extension=gettext
;extension=gmp
extension=intl
;extension=imap
;extension=ldap
;extension=mbstring
;extension=exif ; Must be after mbstring as it depends on it
;extension=mysqli
;extension=oci8_12c ; Use with Oracle Database 12c Instant Client
;extension=odbc
;extension=openssl
;extension=pdo_firebird
;extension=pdo_mysql
Scroll door het php.ini-bestand en je zult het bovenstaande deel zien. Verwijder de ; voor curl en intl en druk op Cntl + x om op te slaan en te verlaten.
Start Apache opnieuw na het aanbrengen van alle wijzigingen.
sudo service apache2 restart
Ga terug naar de bovenstaande URL en je ziet het CI4-initialisatiescherm dat correct wordt weergegeven.
Als je het zo bekijkt, is het niet zo ingewikkeld, maar het kostte me veel tijd om te googelen en te worstelen(?) toen ik de ontwikkelserver voor het eerst instelde.
Omdat ik me vooral bezighield met SM op de productie-server, had ik niet de kans om de ontwikkelserver zelf in te stellen. Toen ik het eindelijk deed, was het moeilijk, maar het was een goede ervaring die me veel heeft geleerd.