На CentOS 7 Linux Я успешно следил за руководством Настройка Jetty для FastCGI.
Однако $JETTY_BASE/webapps/jetty-wordpress.xml
файл в руководстве служит не замужем Установка Wordpress находится в /var/www/wordpress
:
<New id="root" class="java.lang.String">
<Arg>/var/www/wordpress</Arg>
</New>
<Set name="contextPath">/</Set>
<Set name="resourceBase"><Ref refid="root" /></Set>
<Set name="welcomeFiles">
<Array type="string"><Item>index.php</Item></Array>
</Set>
пока у меня есть несколько виртуальные хосты, на каждом из которых установлен Wordpress:
До сих пор я использовал Apache со следующими httpd.conf
(используя localhost в качестве IP-адреса, потому что Apache / Jetty находятся за HAProxy):
<VirtualHost 127.0.0.1:8080>
DocumentRoot /var/www/wordpress1
ServerName site1.com
ServerAlias *.site1.com
</VirtualHost>
<VirtualHost 127.0.0.1:8080>
DocumentRoot /var/www/wordpress2
ServerName site2.com
ServerAlias *.site2.com
</VirtualHost>
<VirtualHost 127.0.0.1:8080>
DocumentRoot /var/www/wordpress1
ServerName site3.com
ServerAlias *.site3.com
</VirtualHost>
Как перевести указанную выше конфигурацию Apache в формат XML Jetty IoC?
Я решил проблему, прочитав Настройка виртуальных хостов документ и создание 3 XML-файлов:
Со следующим содержимым вверху каждого файла:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN"
"http://www.eclipse.org/jetty/configure_9_3.dtd">
<Configure class="org.eclipse.jetty.servlet.ServletContextHandler">
<New id="root" class="java.lang.String">
<Arg>/var/www/html/site1.com</Arg>
</New>
<Set name="contextPath">/</Set>
<Set name="virtualHosts">
<Array type="java.lang.String">
<Item>site1.com</Item>
<Item>www.site1.com</Item>
</Array>
</Set>
<Set name="resourceBase"><Ref refid="root" /></Set>
<Set name="welcomeFiles">
<Array type="string">
<Item>index.html</Item>
<Item>index.php</Item>
</Array>
</Set>
А остальная часть файла такая же, как в Настройка Jetty для FastCGI документ.