Jak zainstalować framework YII PHP na Rhel, Centos, Rocky i Almalinux

Jak zainstalować framework YII PHP na Rhel, Centos, Rocky i Almalinux

Yii to open source, wysokowydajny, elastyczny, wydajny i bezpieczny ramy PHP do szybko budowania nowoczesnych aplikacji internetowych. Jest to ogólna i pełna framework programowania internetowego do pisania kodu w sposób obiektowy i zapewnia wiele sprawdzonych i gotowych do użycia funkcji. Jest wyposażony w szereg rozsądnych domyślnych i wbudowanych narzędzi, które pomagają napisać solidny i bezpieczny kod.

Funkcje YII

Oto niektóre z kluczowych funkcji YII:

  • Czysty framework oparty na OOP.
  • Architektura oparta na komponentach.
  • Implementuje wzór architektoniczny MVC (model-view-controller).
  • Obsługuje Builders Query Builders i ActiveRecord dla baz danych relacyjnych i NoSQL.
  • Obsługa buforowania z wieloma poziomami.
  • RESTFUL API Wsparcie rozwoju API.
  • Jest to wyjątkowo rozszerzalne, umożliwiając użytkownikom dostosowanie lub wymianę dowolnego kodu bezpośrednio z rdzenia. Poza tym użytkownicy mogą korzystać lub opracowywać rozszerzenia, które można rozwinąć.

Yii 2.0 jest obecną generowaniem ram (w momencie pisania), które wymagają PHP 5.4.0 lub powyżej, ale działa najlepiej z najnowszą wersją PHP 8. Obsługuje niektóre z najnowszych technologii i protokołów internetowych, w tym kompozytor, PSR, przestrzenie nazw, cechy i inne.

Będąc ogólnymi ramami tworzenia stron internetowych w połączeniu ze swoimi znaczącymi funkcjami, Yii Może być używany do opracowania prawie dowolnej aplikacji internetowej z portali użytkowników/administratora, forów i systemów zarządzania treścią (CMS), po projekty e-commerce, RESTful Services i wiele więcej na dużą skalę.

Wymagania

  • Działający instancja dystrybucji opartych na RHEL i RHEL, takich jak Centos Stream, Rocky i Almalinux.
  • Lampa lub stos lemp z php 5.4.0 lub więcej.
  • A Kompozytor - Menedżer pakietów na poziomie aplikacji dla PHP.

W tym artykule pokażemy, jak zainstalować YII PHP Framework w dystrybucji opartej na RHEL, aby rozpocząć opracowywanie aplikacji PHP za pomocą Yii.

Zainstaluj stos lub lemp stos

Yii wymaga PHP 5.4 lub powyżej z serwerem Apache lub Nginx zainstalowanym na serwerze, jak pokazano.

--------- Zainstaluj stos lampy --------- # Yum Zainstaluj HTTPD PHP PHP-MYSQLND PHP-PDO PHP-GD PHP-MBSTRING GIT --------- Zainstaluj stos LEMP --------- # Yum Zainstaluj Nginx PHP PHP-MYSQLND PHP-PDO PHP-GD PHP-MBSSTRING GIT 

Po zainstalowaniu możesz uruchomić i włączyć serwer WWW Apache lub Nginx.

# Systemctl start httpd # Systemctl Włącz HTTPD lub # Systemctl Start Nginx # Systemctl Włącz Nginx 

Instalowanie YII za pomocą kompozytora

Istnieje kilka sposobów instalacji Yii, Ale zalecany sposób instalacji Yii jest używane Kompozytor Menedżer pakietów, ponieważ pozwala aktualizować YII za pomocą jednego polecenia, a także umożliwia zainstalowanie nowych rozszerzeń.

Jeśli jeszcze nie masz Kompozytor Zainstalowany na serwerze, możesz go zainstalować, uruchamiając następujące polecenia.

# curl -ss https: // getComposer.org/instalator | kompozytor php # mv.phar/usr/local/bin/composer # chmod +x/usr/local/bin/composer 
Zainstaluj kompozytor w Centos 8

Z Kompozytor zainstalowane, możesz zainstalować najnowszą stabilną wersję Yii Szablon aplikacji w ramach Apache Lub Nginx Katalog dostępny przez Internet TestApp. Jeśli chcesz, możesz wybrać inną nazwę katalogu.

# cd/var/www/html/[Apache Root Directory] lub # cd/usr/share/nginx/html/[nginx root Directory] # kompozytor create-project--prefer-dist yiisoft/yii2-app-bazowy testApp 
Zainstaluj framework YII PHP w Centos 8

Po zakończeniu instalacji skonfiguruj serwer WWW (patrz następna sekcja) lub użyj zintegrowanego serwera WWW PHP, wykonując następujące polecenie w TestApp Project Root Directory.

# CD TestApp # php yii serw 

Notatka: Domyślnie serwer HTTP będzie słuchać portu 8080. Jeśli jednak ten port jest już używany, możesz użyć innego portu, dodając --Port argument, jak pokazano.

# php yii Serve --port = 8888 
Sprawdź instalację YII

Teraz otwórz przeglądarkę i wpisz następujący adres URL, aby uzyskać dostęp do zainstalowanego Yii aplikacja.

http: // localhost: 8888 
Aplikacja YII

Konfigurowanie serwerów internetowych dla YII

Na serwerze produkcyjnym możesz skonfigurować serwera internetowe, aby obsłużyć Yii Aplikacja internetowa za pośrednictwem adresu URL http: // www.przykład.com/indeks.php zamiast http: // www.przykład.com/podstawowe/testapp/index.php. W takim przypadku musisz wskazać root dokumentu serwera WWW na TestApp/Web informator.

Zalecana konfiguracja Nginx

Utwórz plik konfiguracyjny wywoływany /etc/nginx/conf.D/TestApp.conf.

# vi/etc/nginx/conf.D/TestApp.conf 

Następnie skopiuj i wklej następującą konfigurację. Pamiętaj, aby wymienić TecMintapp.Lan z nazwą domeny i /usr/share/nginx/html/testapp/web ze ścieżką, na której znajdują się pliki aplikacji.

serwer Charset UTF-8; client_max_body_size 128m; Posłuchaj 80; ## Posłuchaj IPv4 #Listen [::]: 80 default_server ipv6only = on; ## Słuchaj nazwy IPv6 Server TecMintapp.Lan; źródło /usr/share/nginx/html/testapp/web; indeks indeksu.php; access_log/var/log/nginx/access.dziennik; error_log/var/log/nginx/błąd.dziennik; lokalizacja /  # przekieruj wszystko, co nie jest prawdziwym plikiem do indeksu.PHP TRY_FILES $ URI $ URI / / INDEX.php $ is_args $ args;  # Uzyskanie, aby uniknąć przetwarzania wywołań do nieistniejących plików statycznych przez yii #Location ~ \.(js | css | png | jpg | gif | sWF | iCo | pdf | mov | fla | zip | rar) $  # try_files $ uri = 404; # #ERROR_PAGE 404 /404.html; # Odmów dostępu do plików PHP dla/Assets Directory Lokalizacja ~ ^/Assets/.*\.php $ odmów wszystkich;  Lokalizacja ~ \.php $ zawiera fastcgi_params; fastcgi_param script_filename $ dokument_root $ fastcgi_script_name; #fastcgi_pass 127.0.0.1: 9000; fastcgi_pass unix:/run/php-fpm/www.skarpetka; try_files $ uri = 404;  Lokalizacja ~* /\.  zaprzeczać wszystkiemu;  

Zapisz plik i uruchom ponownie Nginx Aby wprowadzić ostatnie zmiany.

# Systemctl restart nginx 

Zalecana konfiguracja Apache

Użyj następującej konfiguracji w Apache's httpd.conf plik lub w wirtualnej konfiguracji hosta.

# Ustaw root dokumentu, aby być „testapp/web” dokumentroot ”/var/www/html/testApp/Web" # Użyj mod_rewrite dla ładnej obsługi adresu URL rewriteEngine na # if $ showScriptName jest false w urlManager, nie zezwalaj Rewriterule ^indeks.php/ - [l, r = 404] # Jeżeli katalog lub plik istnieje, użyj żądania bezpośrednio przepisywania %request_filename !-f RewriteCond %request_filename !-d # w przeciwnym razie przekazaj żądanie indeksu.Przepis PHP . indeks.PHP #… inne ustawienia…  

Zapisz plik i uruchom ponownie Apache Aby wprowadzić ostatnie zmiany.

# Systemctl restart httpd 

Testowanie aplikacji internetowej YII za pośrednictwem przeglądarki

Przed przetestowaniem naszych Yii aplikacja internetowa upewnij się, że zaktualizuj kontekst bezpieczeństwa /Web/Assets/ katalog, aby uczynić go zapisywaniem procesu internetowego, uruchamiając następujące polecenie.

# chcon -r -t httpd_sys_content_rw_t '/usr/share/nginx/html/testapp/web/assets/' [dla nginx] # chcon -r -t httpd_sys_content_rw_t '/var/www/html/testapp/web/assets/' [dla Apache] 

Następnie zaktualizuj Firewalld Zasady, które pozwalają Http I Https żądania za pośrednictwem zapory do serwera Nginx.

# firewall-cmd --zone = public --add-service = http --Permanent # firewall-cmd --zone = public --add-service = https --Permanent # firewalll-cmd--relad 

Na koniec sprawdź, czy Twoja aplikacja internetowa działa dobrze i jest obsługiwana przez Nginx Lub Apache. Otwórz przeglądarkę internetową i wskazuj na następujący adres:

http: // tecMIntapp.Lan 

Domyślna strona internetowa aplikacji YII powinna wyświetlić jak pokazano na poniższym zrzucie ekranu.

Strona aplikacji internetowej YII

Gratulacje! Pomyślnie zainstalowałeś najnowszą generację YII PHP Framework i skonfigurował go do pracy Nginx Lub Apache NA Rhel systemy.

Aby uzyskać więcej informacji i jak zacząć korzystać Yii Aby zbudować swoją aplikację internetową, zobacz Ostateczny przewodnik YII.