2016-07-14 6 views
2

J'ai posté dans le groupe google Lucee, mais après quatre jours, je ne reçois tout simplement pas le soutien dont j'ai besoin. J'ai l'impression qu'un expert Tomcat sera capable de me pointer dans la bonne direction assez rapidement, alors je poste ici.OSX El Cap, Apache2, Tomcat 8, Lucee 5

OSX El Cap, Apache2, Tomcat 8, Lucee 5.

Sur http://localhost, je reçois Apache "ça marche!" page.

sur http://localhost:8080, je reçois la page par défaut Lucee, servi de

/usr/local/Cellar/tomcat/8.5.3/libexec/apps/lucee 

Sur http://localhost:8080/manager/html et http://localhost:8080/host-manager/html, je reçois les pages d'administration Tomcat.

j'ai un répertoire, qui contient /Volumes/Storage/{companyname}/sites/www-test-app/www index.cfm et index.htm

Je www-test-app mis en place dans mon fichier HOSTS.

J'ai une entrée hôte httpd-vhosts.conf pour www-test-app

J'ai une entrée dans le fichier server.xml de tomcat:

<Host name="www-test-app" appBase="webapps" unpackWARs="true" autoDeploy="true"> 
    <Context path="" docBase="/Volumes/Storage/{companyname}/sites/_test-app/www/"> 
    <JarScanner scanClassPath="false"/> 
    </Context>      
</Host> 

Quand j'appelle http://www-test-app/index.htm, je reçois ma page de test statique.

Quand j'appelle http://www-test-app/index.cfm je reçois cette erreur:

HTTP Status 404 - 
type Status report 
message 
description The requested resource is not available. 
Apache Tomcat/8.5.3 

Je me suis arrêté et redémarré apache et tomcat pour rendre les fichiers de configuration sont lus sûr.

LE PLUS GRAND CLUE: Je ne vois pas créé sous /Volumes/Storage/{companyname}/sites/www-test-app/www

WEB-INF Mes autorisations de répertoire sont 777 pour ce répertoire et tous les sous-répertoires:

/Volumes/Storage/{companyname}/sites 

Je ne suis pas sûr si J'ai besoin de faire des changements de propriétaire bien.

Apache2 a été inclus avec El Cap. Apache testconfig donne "syntaxe OK".

Tomcat a été installé via Homebrew.

Lucee a été installé via un fichier WAR par cette page: http://brianflove.com/2015/03/05/lucee-on-mac-os-x-yosemite-quick-start/

Je suis coincé d'ici ... mais oh si près, depuis la page par défaut Lucee ressemble beaucoup, y compris les cfoutput/variables.

est Voici un exemple de catalina {date} .log.

13-Jul-2016 12:06:02.381 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version:  Apache Tomcat/8.5.3 
13-Jul-2016 12:06:02.383 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:   Jun 9 2016 11:16:29 UTC 
13-Jul-2016 12:06:02.383 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number:   8.5.3.0 
13-Jul-2016 12:06:02.383 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:    Mac OS X 
13-Jul-2016 12:06:02.383 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:   10.11.5 
13-Jul-2016 12:06:02.383 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:   x86_64 
13-Jul-2016 12:06:02.383 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:    /Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home/jre 
13-Jul-2016 12:06:02.383 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:   1.8.0_65-b17 
13-Jul-2016 12:06:02.383 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:   Oracle Corporation 
13-Jul-2016 12:06:02.383 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:   /usr/local/Cellar/tomcat/8.5.3/libexec 
13-Jul-2016 12:06:02.383 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:   /usr/local/Cellar/tomcat/8.5.3/libexec 
13-Jul-2016 12:06:02.384 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/usr/local/Cellar/tomcat/8.5.3/libexec/conf/logging.properties 
13-Jul-2016 12:06:02.384 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 
13-Jul-2016 12:06:02.384 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048 
13-Jul-2016 12:06:02.384 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/usr/local/Cellar/tomcat/8.5.3/libexec 
13-Jul-2016 12:06:02.385 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/usr/local/Cellar/tomcat/8.5.3/libexec 
13-Jul-2016 12:06:02.385 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/usr/local/Cellar/tomcat/8.5.3/libexec/temp 
13-Jul-2016 12:06:02.385 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /Users/marc/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:. 
13-Jul-2016 12:06:02.578 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"] 
13-Jul-2016 12:06:02.619 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read 
13-Jul-2016 12:06:02.623 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-nio-8009"] 
13-Jul-2016 12:06:02.624 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read 
13-Jul-2016 12:06:02.625 INFO [main] org.apache.catalina.startup.Catalina.load Initialization processed in 702 ms 
13-Jul-2016 12:06:02.654 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service Catalina 
13-Jul-2016 12:06:02.655 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.5.3 
13-Jul-2016 12:06:02.665 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDescriptor Deploying configuration descriptor /usr/local/Cellar/tomcat/8.5.3/libexec/conf/Catalina/localhost/ROOT.xml 
13-Jul-2016 12:06:03.183 INFO [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time. 
13-Jul-2016 12:06:08.815 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDescriptor Deployment of configuration descriptor /usr/local/Cellar/tomcat/8.5.3/libexec/conf/Catalina/localhost/ROOT.xml has finished in 6,149 ms 
13-Jul-2016 12:06:08.816 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/Cellar/tomcat/8.5.3/libexec/webapps/docs 
13-Jul-2016 12:06:08.837 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/Cellar/tomcat/8.5.3/libexec/webapps/docs has finished in 21 ms 
13-Jul-2016 12:06:08.837 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/Cellar/tomcat/8.5.3/libexec/webapps/examples 
13-Jul-2016 12:06:09.079 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/Cellar/tomcat/8.5.3/libexec/webapps/examples has finished in 241 ms 
13-Jul-2016 12:06:09.079 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/Cellar/tomcat/8.5.3/libexec/webapps/host-manager 
13-Jul-2016 12:06:09.104 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/Cellar/tomcat/8.5.3/libexec/webapps/host-manager has finished in 25 ms 
13-Jul-2016 12:06:09.104 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/Cellar/tomcat/8.5.3/libexec/webapps/manager 
13-Jul-2016 12:06:09.123 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/Cellar/tomcat/8.5.3/libexec/webapps/manager has finished in 19 ms 
13-Jul-2016 12:06:09.157 INFO [www-test-app-startStop-1] org.apache.catalina.core.ApplicationContext.log Marking servlet CFMLServlet as unavailable 
13-Jul-2016 12:06:09.157 SEVERE [www-test-app-startStop-1] org.apache.catalina.core.StandardContext.loadOnStartup Servlet [CFMLServlet] in web application [] threw load() exception 
java.lang.ClassNotFoundException: lucee.loader.servlet.CFMLServlet 
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1282) 
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1116) 
    at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:520) 
    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:501) 
    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:118) 
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1061) 
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1000) 
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4902) 
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5212) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:152) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1405) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1395) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at java.lang.Thread.run(Thread.java:745) 

Vous ne trouvez pas la déconnexion ... Où puis-je d'ici?

Répondre

1

RÉSOLU {} soupir

Eh bien, je suis tout à fait prêt à lancer ma propre un $$. La solution était beaucoup plus simple que je ne le pensais. Ma (mauvaise) compréhension était que la configuration de Lucee EXPRESS pour utiliser l'installation Apache locale sur le mac ne fonctionnait pas - que je devais utiliser le serveur web intégré de tomcat. Le serveur web Tomcat, parce qu'il est basé sur Java, est en fait sensible à la casse quand il s'agit de noms de fichiers dans l'URL - "Foo.jpg" n'est pas la même chose que "foo.jpg" dans les yeux du chat. C'est pourquoi j'avais renoncé à Lucee Express. Je me souviens avoir essayé de faire fonctionner Apache au niveau local avec Lucee Express, mais comme il s'est passé tellement de temps depuis cette tentative, je n'ai pas pu commencer à vous dire ce que je faisais de mal. Je sais juste que je ne pouvais pas le faire fonctionner - probablement avec des fichiers de configuration dont je n'avais pas besoin.

Quoi qu'il en soit, la solution est simple comme tous les ... Télécharger Lucee Express. Ensuite, il suffit de configurer des hôtes virtuels dans apache comme on le ferait normalement, comme besoin Apache à dire de procuration toute demande coldfusion à tomcat/Lucee ... comme ceci:

<Directory "/Volumes/Storage/company/sites/_test-app/www"> 
    Allow From All 
    AllowOverride All 
    Options +Indexes 
    Require all granted 
    DirectoryIndex index.cfm 
</Directory> 

<VirtualHost *:80> 
    ServerName "www-test-app" 
    ServerAlias "www-test-app.*.*.*.*.xip.io" 
    DocumentRoot "/Volumes/Storage/company/sites/_test-app/www" 
    <Proxy *> 
     Allow from 127.0.0.1 
    </Proxy> 
    ProxyPreserveHost On 
    ProxyPassMatch ^/(.+\.cf[cm])(/.*)?$ ajp://localhost:8009/$1$2 
</VirtualHost> 

ensuite de l'autre côté, ajoutez une entrée similaire pour la fichier Tomcat server.xml:

<Host name="www-test-app" appBase="webapps" autoDeploy="true" unpackWARs="true"> 
      <Context path="" docBase="/Volumes/Storage/company/sites/_test-app/www">   
       <JarScanner scanClassPath="false"/> 
      </Context>      
     </Host> 

Alors (bon sang !!!) juste commencer Apache Tomcat et commencer/Lucee. C'est tout. Tomcat créera les fichiers WEB-INF dans chaque hôte virtuel spécifié. Le serveur Web Tomcat s'exécute toujours sur le port 8888 et le connecteur ajp fonctionne toujours sur 8009.

http://www-test-app donne le résultat via Apache (URL insensibles à la casse).

Depuis Apache a la permission root pour écouter le port 80, il le fait ... et transmet les demandes CF sur le port 8009.

BONUS: On peut encore tester via le serveur web Tomcat ...

http://www-test-app:8888 donne le résultat via le serveur Web Tomcat.

Si l'on voulait contourner/s'abstenir d'Apache et utiliser le serveur web Tomcat, complètement autonome, MAIS sans avoir à ajouter ": 8888" à toutes leurs urls, homebrew pour mac peut installer "haproxy" qui, lorsque s'exécute en tant que root et configuré en utilisant un simple fichier de configuration, peut recevoir des requêtes sur le port 80 et les transmettre au port 8888.

Pour tout nouveau site où l'on souhaite s'assurer que les noms de fichiers sont correctement spécifiés dans le code (sensibilité à la casse- sage), ce serait ma solution ultime. Pour les applications héritées qui étaient à l'origine exécutées sur une pile insensible à la casse, l'utilisation du serveur Web Apache local est la solution.