====== Webサーバの構築 ====== ===== Apache 2 のインストール ===== kimi@sstxp:~$ sudo ufw app list [sudo] password for kimi: Available applications: OpenSSH $ sudo apt install apache2 . . . $ sudo ufw app list Available applications: Apache Apache Full Apache Secure OpenSSH $ $ sudo a2enmod ssl Considering dependency setenvif for ssl: Module setenvif already enabled Considering dependency mime for ssl: Module mime already enabled Considering dependency socache_shmcb for ssl: Enabling module socache_shmcb. Enabling module ssl. See /usr/share/doc/apache2/README.Debian.gz on how to configure SSL and create self-signed certificates. To activate the new configuration, you need to run: systemctl restart apache2 kimi@sstweb:/var/www/html$ sudo a2ensite default-ssl Enabling site default-ssl. To activate the new configuration, you need to run: systemctl reload apache2 $ sudo systemctl reload apache2 $ $ sudo apt install php $ sudo apt install dokuwiki ^ Document root | /var/www/html/ | ===== PHPのインストール ===== $ sudo apt install php libapache2-mod-php $ sudo apt install php-fpm php-common php-mbstring php-xmlrpc php-gd php-xml php-mysql php-cli php-zip php-curl php-imagick $ php -v PHP 7.4.3 (cli) (built: Oct 6 2020 15:47:56) ( NTS ) Copyright (c) The PHP Group Zend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies $ $ sudo cat > /tmp/php_info.php << EOF > phpinfo(); > ?> > EOF $ mv /tmp/php_info.php /var/www/html/ $ $ sudo a2enmod rewrite Enabling module rewrite. To activate the new configuration, you need to run: systemctl restart apache2 $ sudo systemctl restart apache2 ===== Dokuwikiのインストール ===== Officialサイトからダウンロードしたtarボールを、apache2のデフォルトのドキュメントルートと同じ階層に展開し、ドキュメントルートをDokuwikiのディレクトリに設定する。 - tarボールのダウンロード $ wget https://download.dokuwiki.org/略/dokuwiki-略.tgz - DocumentRootにファイルを展開 $ cd /var/www/html $ sudo tar zxvf ~/dokuwiki-略.tgz $ sudo mv dokuwiki-20??-??-?? dokuwiki $ sudo chown -R www-data:www-data /var/www/html/dokuwiki - ウェブブラウザで''http://ip_address_or_FQDN/install.php?''にアクセスし必要事項を設定する。 The installer found some problems, indicated below. You can not continue until you have fixed them. PHP function xml_parser_create is not available. Maybe your hosting provider disabled it for some reason? ===== Wordpressのインストール ===== - tarボールのダウンロード $ wget https://wordpress.org/latest.tar.gz - DocumentRootにファイルを展開 $ cd /var/www/html $ sudo tar zxvf ~/latest.tar.gz $ sudo mv wordpress wp $ sudo chown -R www-data:www-data /var/www/html/wp - MySQLデータベースの設定 - MySQLのインストール$ sudo apt install mysql-server $ sudo apt install mysql-client-core-8.0 $ sudo apt install mysql-server-core-8.0 $ sudo mysql_secure_installation - Wordpress用データベースと作業用ユーザを設定$ sudo mysql -u root -p mysql> create database wpdb; mysql> create user 'wpadmin'@'localhost' identified by '平文パスワード'; mysql> grant all on wpdb.* to 'wpadmin'@'localhost'; mysql> select user from mysql.user; mysql> quit $ - ウェブブラウザで''http://ip_address_or_FQDN/wp/''にアクセスし必要事項を設定する。 ^ データベース名 | wpdb | ^ ユーザー名 | wpadmin | ^ パスワード | ....... | ^ ホスト名 | localhost | ===== systemctlの使い方 ===== Apacheを例にsystemctlの使用例を以下に挙げる * サービスの停止$ sudo systemctl stop apache2 * サービスの起動$ sudo systemctl start apache2 * サービスの停止後、再開$ sudo systemctl restart apache2 * サービスを停止せずに設定だけリロード$ sudo systemctl reload apache2 * サービスの自動起動を無効化$ sudo systemctl disable apache2 * サービスの自動起動を有効化$ sudo systemctl enable apache2 ====== Under construction ====== $ $ sudo cp -r ~/wordpress/* /var/www/html/ $ tar -xzvf latest.tar.gz $ sudo apt install mysql-client-core-8.0 ''/etc/apache2/sites-enabled/000-default.conf''の''DocumentRoot''を''/var/www/html''から''/var/www/dokuwiki''に変更する。 $ sudo vi /etc/apache2/sites-enabled/000*.conf # DocumentRoot /var/www/html DocumentRoot /var/www/dokuwiki sudo vi /etc/apache2/apache2.conf #AllowOverride None AllowOverride All $ sudo service apache2 restart ウェブブラウザで''http://ip_address_or_FQDN/install.php?''にアクセスし必要事項を設定する。終わったら''install.php''はもういらない。 $ sudo rm install.php ==== デフォルトの設定 ==== $ sudo apt install apache2 sudo ufw app list Available applications: Apache Apache Full Apache Secure OpenSSH kimi@sstxp:~$ sudo ufw allow 'Apache' Rules updated Rules updated (v6) kimi@sstxp:~$ sudo ufw status Status: inactive kimi@sstxp:~$ sudo systemctl status apache2 ● apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor prese> Active: active (running) since Wed 2021-02-24 06:16:51 UTC; 3min 19s ago Docs: https://httpd.apache.org/docs/2.4/ Main PID: 2068 (apache2) Tasks: 55 (limit: 9451) Memory: 5.9M CGroup: /system.slice/apache2.service ├─2068 /usr/sbin/apache2 -k start ├─2069 /usr/sbin/apache2 -k start └─2070 /usr/sbin/apache2 -k start Feb 24 06:16:51 sstxp systemd[1]: Starting The Apache HTTP Server... Feb 24 06:16:51 sstxp apachectl[2067]: AH00558: apache2: Could not reliably det> Feb 24 06:16:51 sstxp systemd[1]: Started The Apache HTTP Server. kimi@sstxp:~$ * 設定ファイル = * DocumentRoot = /var/www/html * デフォルトではディレクトリ