Uvod
Instalacija Codeignitera
Konfiguracija i lijepi URL-ovi
Zaključak
Uvod
Codeigniter je vrlo moćan PHP okvir s malim otiskom.
Ovaj vodič pretpostavlja da imate barem radni LAMP stog i root pristup svom VPS-u.
Instalacija Codeignitera
Prvo idite u svoju korijensku mapu Apachea.
cd /var/www/html
Preuzmite najnovije stabilno izdanje Codeignitera.
wget https://github.com/bcit-ci/CodeIgniter/archive/3.1.5.zip
Raspakirajte preuzetu datoteku.
unzip 3.1.5.zip
Ako dobijete pogrešku: The program 'unzip' is currently not installed., morate instalirati raspakirati.
sudo apt install unzip
Sada pokušajte ponovno izvući.
Zabilježite novi direktorij pod nazivom CodeIgniter-3.1.5. Preimenujte ovu mapu u codeigniter.
mv CodeIgniter-3.1.5 codeigniter
Dođite do http://[vultr-instance-ip]/codeigniteri dočekat će vas stranica dobrodošlice codeigniter. Ovu stranicu dobrodošlice proizvodi primjer kontrolera koji se nalazi na application/controllerspod nazivom Welcome.php. Učitana stranica nalazi se na application/viewsi zove se welcome.php.
Konfiguracija i lijepi URL-ovi
Codeigniter je sada pokrenut i trebali biste napraviti početnu konfiguraciju. Ako planirate koristiti bazu podataka, morat ćete konfigurirati pristup bazi podataka u database.phpkonfiguracijskoj datoteci koja se nalazi na application/config/database.php. Pronađite sljedeći blok i ažurirajte ga podacima o vezi.
$db['default'] = array(
'dsn' => '',
'hostname' => 'localhost',
'username' => '',
'password' => '',
'database' => '',
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'production'),
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);
Spremite datoteku i izađite. Završili ste konfiguraciju baze podataka, sada pogledajmo Codeigniter URL shemu.
Lijepi URL-ovi
Prema zadanim postavkama, URL-ovi u Codeigniteru dizajnirani su tako da budu prilagođeni ljudima s pristupom temeljenim na segmentima:
http://[vultr-instance-ip]/codeigniter/index.php/[controller]/[method]/[param]
Slijedeći MVC pristup, [controller]segment predstavlja klasu kontrolera koja se nalazi na application/controllers, [method]segment metodu u ovoj klasi, a [param]segment je param koji se prosljeđuje metodi.
Testirajmo sada ovu konfiguraciju dodavanjem sljedeće metode metodi indeksa u application/controllers/Welcome.php:
public function hello($user = 'John Doe')
{
echo "Hello {$user}!";
}
Sada idite na http://[vultr-instance-ip]/codeigniter/index.php/welcome/hello/Jack. Trebali biste vidjeti Hello Jack!u svom pregledniku.
Uklanjanje index.php
Prema zadanim postavkama index.phpbit će uključen u vaš url, da bismo ga uklonili moramo omogućiti Apache mod_rewritemodul, dodati .htaccessdatoteku u korijensku mapu vaše aplikacije i napraviti neke konfiguracije u application/config/config.php.
Prvo, provjerimo je li mod_rewriteveć omogućeno pokretanjem sljedeće naredbe.
apache2ctl -M
Ako vidite rewrite_modulena popisu, možete ići dalje, inače ga omogućite.
a2enmod rewrite
Ponovno pokrenite Apache poslužitelj.
sudo service apache2 restart
Sada kreirajte .htaccessdatoteku na /var/www/html/codeigniter/i stavite sljedeći sadržaj u nju.
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php?/$0 [PT,L]
Pobrinite se da vaš .htaccessdatoteka omogućeno postavljanjem AllowOverridena All i dodavanja Order allow,denyi allow from allu virtualnom datoteci hosts, ili u globalnoj konfiguraciji Apache.
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
Order allow,deny
allow from all
</Directory>
Sada uklonite index.phpdatoteku iz URL-ova u konfiguracijskoj datoteci Codeigniter application/config/config.php.
Pronađite sljedeći kod,
$config['index_page'] = 'index.php';
I zamijenite ga ovim.
$config['index_page'] = '';
Sada možete pristupiti svojim URL-ovima bez index.phpdatoteke. Dođite do http://[vultr-instance-ip]/codeigniter/welcome/hello/Jacki provjerite ovo. Trebali biste vidjeti istu poruku kao prije.
Zaključak
Instalirali smo okvir Codeigniter i uklonili ga index.phps naših URL-ova. Više o ovom okviru možete saznati kroz službeni korisnički vodič .