我最近切換到Mac,並且正在運行El Cap。我已經安裝了ColdFusion 10開發人員版本,內部Web服務器,目前是Tomcat 7.0.64。我已經安裝了ColdFusion服務器的所有更新。 locahost上的CF管理員工作正常,並且我設置了端口轉發,以便瀏覽器中的呼叫(端口80)被轉發到默認的CF/Tomcat配置的端口8500.這一切都正常工作。ColdFusion 10 Developer,Tomcat 7.0.64和多個網站
我在Windows上工作的方式非常簡單。如果我有一個網站www.example.com,我會在HOSTS中設置一個名爲www-example-com的本地名稱,並在IIS中創建該主機。這個命名約定已被超過30個網站遵循,並且運行良好,我想用我的本地CF/Tomcat配置複製它。
我正在編輯文件/Applications/ColdFusion10/cfusion/runtime/conf/server.xml,並認爲只需添加另一個<Host>
塊就可以了。相反,當我嘗試啓動ColdFusion時出現錯誤。沒有我添加的塊,它工作正常。我在下面提供了我的當前server.xml文件,並添加了我的塊。啓動過程中我看到的錯誤是:
警告:Catalina.start使用 /Applications/ColdFusion10/cfusion/runtime/conf/server.xml org.xml.sax.SAXParseException:元素類型 「閥門」 絕後面跟着屬性規範,「>」或「/>」。
我也明白,不建議直接編輯server.xml,事實上,將每個站點/主機的Tomcat配置XML文件存在於其各自目錄結構中的某個位置會很好。
我爲每個站點計劃目錄結構:
/Sites/www-example-com
/Sites/www-example-com/files/private (not web accessible; subdirectories for various private files the site may use, including perhaps tomcat xml config files, etc)
/Sites/www-example-com/files/public (virtual directory, mapped to appear directly under web root)
/Sites/www-example-com/www (the root web application directory)
但爲了避免可能的權限問題,我把出現在我的下方添加的主機的目錄下我的第一個Web應用程序。
那麼我需要做什麼來獲得我正在尋找的配置?或者我完全在編輯錯誤的文件,考慮到tomcat與CF綁定? (我不認爲事情,因爲它仍然使用相同的server.xml文件,我不認爲他們已經以任何方式擰好Tomcat)
<?xml version="1.0" encoding="UTF-8"?>
<Server port="8007" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<Listener className="org.apache.catalina.core.JasperListener" />
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<GlobalNamingResources>
<Resource name="UserDatabase" auth="Container" type="org.apache.catalina.UserDatabase" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<Service name="Catalina">
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="150" minSpareThreads="4" />
<Connector executor="tomcatThreadPool" maxThreads="50" port="8500" protocol="org.apache.coyote.http11.Http11Protocol" connectionTimeout="20000" redirectPort="8445" />
<Connector port="8012" protocol="AJP/1.3" redirectPort="8445" tomcatAuthentication="false" />
<Engine name="Catalina" defaultHost="localhost" jvmRoute="cfusion">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase" />
</Realm>
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="false">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="%h %l %u %t "%r" %s %b" resolveHosts="false" />
</Host>
<!-- START: the block i tried to add -->
<Host name="www-example-com" appBase="/Applications/ColdFusion10/cfusion/www-example-com/www" unpackWARs="false" autoDeploy="false">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="%h %l %u %t "%r" %s %b" resolveHosts="false" />
</Host>
<!-- END: the block i tried to add -->
</Engine>
</Service>
</Server>
該錯誤表明您的XML格式不正確,但其中的那個對我來說看起來還不錯。你確定那是破碎的嗎? –