Назад | Перейти на главную страницу

КАК запустить сайт Wordpress вместе с веб-приложением Tomcat на одном сервере

Я создаю решение, в котором часть сайта CMS (например, о нас, контакты и т. Д.) Будет запускаться в Wordpress, а частные страницы будут представлять собой стек на основе Java-Servlet, запущенный на Tomcat 7.

Оба эти «приложения» должны работать на одном сервере из соображений бюджета, по крайней мере, на данный момент.

Что я хочу знать, как это сделать (с помощью конфигураций, настроек и т. Д.)? Таким образом, всякий раз, когда пользователи заходят на общедоступные страницы, они будут получать контент из Wordpress, но для частных страниц (здесь я предполагаю, что будет шаблон URL-адреса, отличающий это), тогда он будет обслуживаться Tomcat

Я предполагаю, что буду использовать Apache в качестве сервера для обработки запросов wordpress. Также это сервер Ubuntu 12.04.

Я думаю, что технология, которую вы ищете, - это обратный прокси. Настройте свой Tomcat для прослушивания 8080 и пусть apache действует как прокси для него, используя mod_proxy_ajp или похожие.

Я недавно собрал все вместе с Quercus (реализация Java для PHP5) создание одного файла WAR с последней версией wordpress.

http://bonfab.io/jwordpress/

Принимая направление @ lain Я смог, наконец, решить проблему, выполнив пару действий.

  1. Переименовал файл WAR в моем коте, в данном случае частные страницы
  2. В моем определении виртуальных хостов я изменил ajp: //, чтобы отразить вышеуказанное изменение.

Вот файл виртуальных хостов,

<VirtualHost _default_:443>
        ServerAdmin webmaster@localhost
        ServerName localhost:443

        DocumentRoot /var/www

        <Directory /var/www>
        #For Wordpress
                Options FollowSymLinks
                AllowOverride All
        </Directory>

        <Proxy *>
                Order deny,allow
                Allow from all
        </Proxy>

        ProxyPreserveHost On
        ProxyRequests           Off
        ProxyPass               /private-pages       ajp://localhost:8009/private-pages
        ProxyPassReverse        /private-pages       ajp://localhost:8009/private-pages

        <Location /private-pages>
            Order allow,deny
            Allow from all
        </Location>



        SSLEngine on
        SSLProxyEngine On


        SSLCertificateFile      /etc/apache2/ssl/apache.crt
        SSLCertificateKeyFile /etc/apache2/ssl/apache.key

</VirtualHost>