# Installer Apache/PHP via opkg (Entware) ### Apache ``` ``` #### Configuration: ```bash sudo nano /opt/etc/apache2/apache2.conf ``` ```http Listen 81 User http Group http ServerName clicclac.synology.me:81 DirectoryIndex index.html index.php ProxyPassMatch "^/(.*\.php(/.*)?)$" "fcgi://127.0.0.1:9000/opt/homebrew/local/var/www/$1" # 2.4.10+ can proxy to unix socket # SetHandler "proxy:unix:/var/run/php5-fpm.sock|fcgi://localhost/" # Else we can just use a tcp socket: SetHandler "proxy:fcgi://127.0.0.1:9000" DirectoryIndex index.php index.html SetHandler application/x-httpd-php DocumentRoot "/opt/share/apache2/htdocs" ``` ```bash sudo /opt/etc/init.d/S80apache restart ``` #### Liste des modules: ```bash apachectl -M ``` ### PHP #### Installer PHP 8.2: ```bash sudo opkg install php8 php8-cgi php8-cli php8-fastcgi ``` ```bash /opt/etc $ cd init.d/ total 16 drwxr-xr-x 1 root root 74 May 29 07:40 . drwxr-xr-x 1 root root 390 Feb 27 08:44 .. -rw-r--r-- 1 root root 2822 Apr 19 2021 rc.func -rwxr-xr-x 1 root root 966 Apr 19 2021 rc.unslung -rwxr-xr-x 1 root root 241 Feb 27 08:44 S79php8-fpm lrwxrwxrwx 1 root root 19 May 29 07:40 S80apache -> /opt/sbin/apachectl ``` #### Installer des modules PHP: ```bash sudo opkg install php8-mod-bcmath php8-mod-ctype php8-mod-curl php8-mod-dom php8-mod-exif php8-mod-fileinfo php8-mod-filter php8-mod-ftp php8-mod-gd php8-mod-gettext php8-mod-gmp php8-mod-iconv php8-mod-imap php8-mod-intl icu-full-data php8-mod-mbstring php8-mod-mysqli php8-mod-mysqlnd php8-mod-opcache php8-mod-openssl php8-mod-pcntl php8-mod-pdo php8-mod-pdo-mysql php8-mod-pdo-sqlite php8-mod-phar php8-mod-session php8-mod-sysvsem php8-mod-tokenizer php8-mod-xml php8-mod-xmlwriter php8-mod-zip php8-pecl-imagick php8-pecl-redis ``` #### PHP via opkg: ```bash /opt/bin -rwxr-xr-x 1 root root 4322256 Feb 27 08:44 php8-cgi -rwxr-xr-x 1 root root 4392192 Feb 27 08:44 php8-cli lrwxrwxrwx 1 root root 8 May 29 09:50 php8-fcgi -> php8-cgi -rwxr-xr-x 1 root root 4439296 Feb 27 08:44 php8-fpm lrwxrwxrwx 1 root root 8 May 29 09:50 php-cgi -> php8-cgi lrwxrwxrwx 1 root root 8 May 29 08:05 php-cli -> php8-cli lrwxrwxrwx 1 root root 9 May 29 09:50 php-fcgi -> php8-fcgi ``` #### Paquet Synology PHP: ```bash /usr/local/bin lrwxrwxrwx 1 root root 47 May 28 09:22 php80 -> /var/packages/PHP8.0/target/usr/local/bin/php80 lrwxrwxrwx 1 root root 51 May 28 09:22 php80-cgi -> /var/packages/PHP8.0/target/usr/local/bin/php80-cgi lrwxrwxrwx 1 root root 51 May 28 09:22 php80-fpm -> /var/packages/PHP8.0/target/usr/local/bin/php80-fpm ``` #### Démarrer PHP ```bash bruno@DS916:/opt/etc/init.d $ ./S79php8-fpm start Starting php8-fpm... done. ``` #### Statut de PHP ```bash bruno@DS916:/opt/etc/init.d $ ./S79php8-fpm status Usage: ./S79php8-fpm (start|stop|restart|check|kill|reconfigure) ``` #### Configuration: ```bash sudo nano /opt/etc/php.ini ``` ```ini post_max_size = 500M display_errors = Off error_log = /opt/var/log/php_errors.log output_buffering = Off ; Resource Limits max_execution_time = 30 ; Maximum execution time of each script, in seconds. max_input_time = 60 ; Maximum amount of time each script may spend parsing request data. ;max_input_nesting_level = 64 memory_limit = 32M ; Maximum amount of memory a script may consume. ; Paths and Directories ;doc_root = "/opt/share/www/lighttpd" ;user_dir = extension_dir = "/opt/lib/php" enable_dl = On ;cgi.force_redirect = 1 ;cgi.nph = 1 ;cgi.redirect_status_env = ; cgi.fix_pathinfo=1 ; File Uploads file_uploads = O upload_tmp_dir = "/opt/tmp" upload_max_filesize = 500M max_file_uploads = 50 ``` #### Apache: ```bash /opt/lib/apache2/libphp.so ```