GNU/Linux >> Linux の 問題 >  >> Debian

Debian8(Jessie)にNginxとMariaDBでTYPO37をインストールする方法

このチュートリアルでは、WebサーバーとしてNginxがインストールされ、データベースサーバーとしてMariaDBがインストールされているDebian 8(Jessie)サーバーにTYPO3(バージョン7)Webサイトをインストールして構成する方法を示します。 Nginxは、このセットアップで標準のWebサーバー「Apache」を置き換える高速Webサーバーです。MariaDBは、MySQLよりも高速で元のMySQLの発明者であるMontyWideniusによって開発されたMySQlフォークです。

Typo3はPHPで書かれたエンタープライズクラスのCMSシステムであり、大規模なユーザーと開発者のコ​​ミュニティがあります。

予備メモ

ここでドキュメントルート/var/www/www.example.com/webを使用してwww.example.comという仮想ホストにTYPO3をインストールしたいと思います。私のサーバーはIPアドレス192.168.1.100を使用しています。すべての構成ファイルとコマンドでこのIPをサーバーのIPアドレスに置き換えてください。

チュートリアルでは、すでにNginxが機能していることを前提としています。そうでない場合は、最初にこのガイドに従ってNginx、PHP、MariaDBをインストールしてください。

サーバーにrootユーザーとしてログインし、次の手順に進みます。

APCuのインストール

APCuは、PHP中間コードをキャッシュおよび最適化するための無料のオープンPHPオペコードキャッシャーであり、以前はAPCによって提供されていた機能を現在統合されているPHPオペコードに追加します。これは、eAcceleratorやXCacheなどの他のPHPオペコードキャッシャーに似ています。 PHPページを高速化するために、これらのいずれかをインストールすることを強くお勧めします。

APCは次のようにインストールできます:

apt-get install php5-apcu

FastCGIデーモンとしてPHP-FPMを使用している場合は、次のように再起動します。

systemctl restart php5-fpm.service

TYPO3のインストール

私のwww.example.comWebサイトのドキュメントルートは/var/www/www.example.com/webです。存在しない場合は、次のように作成します。

mkdir -p /var/www/www.example.com/web

次に、https://typo3.org/download/からTYPO3 7.6.4を.tar.gzファイルとしてダウンロードし、ドキュメントルートに配置します:

cd /tmp
wget http://downloads.sourceforge.net/project/typo3/TYPO3%20Source%20and%20Dummy/TYPO3%207.6.4/typo3_src-7.6.4.tar.gz
tar xfz typo3_src-7.6.4.tar.gz
mv typo3_src-7.6.4 /var/www/www.example.com/
cd /var/www/www.example.com/web
ln -s ../typo3_src-7.6.4 typo3_src
ln -s typo3_src/index.php
ln -s typo3_src/typo3

ドキュメントルートとその中のTYPO3ファイルをユーザーwww-dataとグループwww-dataとして実行されているnginxデーモンによって書き込み可能にすることをお勧めします:

chown -R www-data:www-data /var/www/www.example.com/web

TYPO3用のMySQLデータベース(MySQL TYPO3ユーザーを含む)をまだ作成していない場合は、次のように作成できます(この例ではデータベースにtypo3という名前を付け、ユーザーの名前はtypo3_admin、パスワードはtypo3_admin_passwordです)。

mysqladmin --defaults-file=/etc/mysql/debian.cnf create typo3
mysql --defaults-file=/etc/mysql/debian.cnf
GRANT ALL PRIVILEGES ON typo3.* TO 'typo3_admin'@'localhost' IDENTIFIED BY 'typo3_admin_password';
GRANT ALL PRIVILEGES ON typo3.* TO 'typo3_admin'@'localhost.localdomain' IDENTIFIED BY 'typo3_admin_password';
FLUSH PRIVILEGES;
quit;

次に、次のように/ etc / nginx /sites-available/ディレクトリにwww.example.comvhostのnginxvhost構成を作成します。

nano /etc/nginx/sites-available/www.example.com.vhost
server {
       listen 80;
       server_name www.example.com example.com;
       root /var/www/www.example.com/web;

       if ($http_host != "www.example.com") {
                 rewrite ^ http://www.example.com$request_uri permanent;
       }

       index index.php index.html;

       location = /favicon.ico {
                log_not_found off;
                access_log off;
       }

       location = /robots.txt {
                allow all;
                log_not_found off;
                access_log off;
       }

       # Deny all attempts to access hidden files such as .htaccess, .htpasswd, .DS_Store (Mac).
       location ~ /\. {
                deny all;
                access_log off;
                log_not_found off;
       }

        location ~ \.php$ {
                        try_files $uri =404;
                        include /etc/nginx/fastcgi_params;
                        fastcgi_pass unix:/var/run/php5-fpm.sock;
                        fastcgi_index index.php;
                        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                        fastcgi_intercept_errors on;
                        fastcgi_buffer_size 128k;
                        fastcgi_buffers 256 16k;
                        fastcgi_busy_buffers_size 256k;
                        fastcgi_temp_file_write_size 256k;
                        fastcgi_read_timeout 1200;
        }
		
        client_max_body_size 100M;

        location ~ /\.(js|css)$ {
                expires 604800s;
        }

        if (!-e $request_filename){
                rewrite ^/(.+)\.(\d+)\.(php|js|css|png|jpg|gif|gzip)$ /$1.$3 last;
        }

        location ~* ^/fileadmin/(.*/)?_recycler_/ {
                deny all;
        }
        location ~* ^/fileadmin/templates/.*(\.txt|\.ts)$ {
                deny all;
        }
        location ~* ^/typo3conf/ext/[^/]+/Resources/Private/ {
                deny all;
        }
        location ~* ^/(typo3/|fileadmin/|typo3conf/|typo3temp/|uploads/|favicon\.ico) {
        }

        location / {
                        if ($query_string ~ ".+") {
                                return 405;
                        }
                        if ($http_cookie ~ 'nc_staticfilecache|be_typo_user|fe_typo_user' ) {
                                return 405;
                        } # pass POST requests to PHP
                        if ($request_method !~ ^(GET|HEAD)$ ) {
                                return 405;
                        }
                        if ($http_pragma = 'no-cache') {
                                return 405;
                        }
                        if ($http_cache_control = 'no-cache') {
                                return 405;
                        }
                        error_page 405 = @nocache;

                        try_files /typo3temp/tx_ncstaticfilecache/$host${request_uri}index.html @nocache;
        }

        location @nocache {
                        try_files $uri $uri/ /index.php$is_args$args;
        }

}

この構成には、クリーンURLに必要なすべてのものがすでに含まれています(try_files $ uri $ uri / /index.php$is_args$args; @nocacheの場所の行のため)

次に、/ etc / nginx/mime.typesに次の行があることを確認します。

nano /etc/nginx/mime.types
[...]
        text/x-component                        htc;
[...]

vhostを有効にするには、/ etc / nginx /sites-enabled/ディレクトリからvhostへのシンボリックリンクを作成します。

cd /etc/nginx/sites-enabled/
ln -s /etc/nginx/sites-available/www.example.com.vhost www.example.com.vhost

変更を有効にするためにnginxをリロードします:

systemctl reload nginx.service

次に、TYPO3のphp.iniファイルのいくつかの値を調整します。このサーバーではphp-fpmを使用しているため、ファイルは/etc/php5/fpm/php.iniです。エディターでファイルを開きます:

nano /etc/php5/fpm/php.ini

次の設定を調整します。

[...]
always_populate_raw_post_data=-1
[...]
max_execution_time=240
[...]
post_max_size = 20M
[...]
upload_max_filesize = 20M
[...]
max_input_vars=2000
[...]

次のコマンドで変更を適用します:

systemctl reload php5-fpm.service

これで、http://www.example.com/にアクセスしてWebベースのTYPO3インストーラーを起動できます-インストールを続行できるように、最初にドキュメントルートにファイルFIRST_INSTALLを作成するように求められます:

cd /var/www/www.example.com/web/
touch FIRST_INSTALL
chown www-data:www-data FIRST_INSTALL

次に、ページをリロードします。インストーラーは、すべての前提条件が満たされているかどうかを確認します。他に警告がある場合は、今すぐ修正してみてください。

[続行]をクリックします。

次にデータベースの詳細(ユーザー:typo3_admin;パスワード:typo3データベースを作成したときのtypo3_admin_password)を入力し、続行をクリックします:

次のページで[既存の空のデータベースを使用する]を選択し、ドロップダウンメニューからtypo3を選択します。次に、[続行]をクリックします:

次に、TYPO3管理者ユーザーのユーザー名とパスワードとあなたのサイトの名前を提供します。その後、[続行]をクリックします:

これでインストールは完了です。完全に空のシステムではなく、デモWebサイトから開始する場合は、[はい、配布リストをダウンロードします]チェックボックスをオンのままにします(これにより、デモデータがすぐにインストールされるわけではなく、バックエンドでデモWebサイトを利用できるようになります。インストールすることを選択してください)。代わりに空のページから始めることを選択して、カスタムWebサイトを構築できるようにします。次に、[バックエンドを開く]をクリックします:

管理エリアはhttp://www.example.com/typo3/の下にあります。ユーザー名adminとインストール時に定義したパスワードを使用してログインします。

次に、Typo3のセットアップ中に選択したユーザー名とパスワードでログインします。

Typo3は正常にインストールされました。これで、Typo3ウェブサイトの構築を開始できます。

仮想マシンイメージ

このチュートリアルは、Howtoforgeサブスクライバー向けにOVA/OVF形式ですぐに使用できる仮想マシンとして利用できます。 VM形式は、VMWare、Virtualbox、およびこの形式をインポートできるその他のツールと互換性があります。上部の右側のメニューにダウンロードリンクがあります。ファイル名をクリックしてダウンロードを開始します。

VMのログインの詳細は次のとおりです。

Typo3ログイン

ユーザー名:admin
パスワード:howtoforge

SSHログイン

ユーザー名:root
パスワード:howtoforge

MariaDBログイン

ユーザー名:root
パスワード:howtoforge

最初の起動後にパスワードを変更してください。

VMは静的IP192.168.1.100用に構成されており、IPはファイル/ etc / network/interfacesで変更できます。

リンク
  • TYPO3:http://typo3.org/
  • nginx:http://nginx.org/
  • nginx Wiki:http://wiki.nginx.org/
  • Debian:http://www.debian.org/

Debian
  1. Debian10にNginxを使用してTextpatternCMSをインストールする方法

  2. Debian11にMariaDBをインストールして保護する方法

  3. Debian 8にNginxをインストールする方法(Jessie)

  1. Debian9にNginxでPhorumをインストールする方法

  2. Debian11にMariadb10をインストールして設定する方法

  3. Nginx、PHP-FPM、MariaDBを使用してDebian7VPSにPagekitをインストールします

  1. CentOS7にNginxとMariaDBを使用してownCloud9.1をインストールする方法

  2. Debian9にNginxを使用してWonderCMSをインストールする方法

  3. Debian11にNginxを使用してWonderCMSをインストールする方法