阿帕奇(Apache Software Foundation)软件哪里可以下载?关于网站开发的软件... 或者官网是什么? 谢谢了

2024-05-14 19:11

1. 阿帕奇(Apache Software Foundation)软件哪里可以下载?关于网站开发的软件... 或者官网是什么? 谢谢了

http://www.php100.com/html/download/server/2010/0104/3747.html  可以下载到apache,如果是编译php文件大可用wamp服务,是集成apache,mysql,php三方的服务软件

阿帕奇(Apache Software Foundation)软件哪里可以下载?关于网站开发的软件... 或者官网是什么? 谢谢了

2. Apache Software Foundation\Tomcat 6.0\work\Catalina\localhost目录下放的是什么?

tomcat运行时候的临时文件,有时候更新了工程但是没有效果,有可能因为老版本的缓存还在,这个时候删除这个文件夹下的相应文件就可以了 

可以这样理解,webapps下放的是java文件,work下放的是.class文件

3. cmd 中想进入D:\Program Files (x86)\Apache Software Foundation\Apache2.2\bin,

在系统变量里找到Path变量,然后点编辑,在变量值中加上  ;D:\Program Files (x86)\Apache Software Foundation\Apache2.2\bin应该就行了。

cmd 中想进入D:\Program Files (x86)\Apache Software Foundation\Apache2.2\bin,

4. 查看tomcat启动文件都干点啥

 在windows操作系统中,我们运行tomcat只需要执行startup.bat脚本就好,简单的很,但是startup.bat这个脚本做些什么,我是真的不知道的,所以今天我就说说startup.bat这个脚本都有什么内幕在里面。首先我们看一下startup.bat的内容是什么:

1 @echo off
 2 rem Licensed to the Apache Software Foundation (ASF) under one or more
 3 rem contributor license agreements.  See the NOTICE file distributed with
 4 rem this work for additional information regarding copyright ownership.
 5 rem The ASF licenses this file to You under the Apache License, Version 2.0
 6 rem (the "License"); you may not use this file except in compliance with
 7 rem the License.  You may obtain a copy of the License at
 8 rem
 9 rem     http://www.apache.org/licenses/LICENSE-2.0
10 rem
11 rem Unless required by applicable law or agreed to in writing, software
12 rem distributed under the License is distributed on an "AS IS" BASIS,
13 rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 rem See the License for the specific language governing permissions and
15 rem limitations under the License.
16 
17 if "%OS%" == "Windows_NT" setlocal
18 rem ---------------------------------------------------------------------------
19 rem Start script for the CATALINA Server
20 rem
21 rem $Id: startup.bat 895392 2010-01-03 14:02:31Z kkolinko $
22 rem ---------------------------------------------------------------------------
23 
24 rem Guess CATALINA_HOME if not defined
25 set "CURRENT_DIR=%cd%"
26 if not "%CATALINA_HOME%" == "" goto gotHome
27 set "CATALINA_HOME=%CURRENT_DIR%"
28 if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome
29 cd ..
30 set "CATALINA_HOME=%cd%"
31 cd "%CURRENT_DIR%"
32 :gotHome
33 if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome
34 echo The CATALINA_HOME environment variable is not defined correctly
35 echo This environment variable is needed to run this program
36 goto end
37 :okHome
38 
39 set "EXECUTABLE=%CATALINA_HOME%\bin\catalina.bat"
40 
41 rem Check that target executable exists
42 if exist "%EXECUTABLE%" goto okExec
43 echo Cannot find "%EXECUTABLE%"
44 echo This file is needed to run this program
45 goto end
46 :okExec
47 
48 rem Get remaining unshifted command line arguments and save them in the
49 set CMD_LINE_ARGS=
50 :setArgs
51 if ""%1""=="""" goto doneSetArgs
52 set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1
53 shift
54 goto setArgs
55 :doneSetArgs
56 
57 call "%EXECUTABLE%" start %CMD_LINE_ARGS%
58 
59 :end


  如果熟悉语法,那么对这个脚本的内容了解起来就很容易,不幸的是,我不熟悉,所以我只能一点一点的看了,从头开始:
第1行:echo off是一个批处理命令,作用就是关闭输出所执行的批处理操作的所执行的命令,前面加上@就是连echo off这条命令也不显示,看一下下面这个例子,我在D盘创建一个脚本文件test.bat,文件中的内容如下:
1 C:
2 dir

我运行此脚本,执行结果如下:

当在test.bat脚本上加上echo off以后,
1 echo off
2 c:
3 dir

 
执行结果 如下:

有没有发现,其中的c:和dir命令都已经不现实了,知识现实了一个echo off命令,如果加上@echo off那么连echo off命令都不现实:
@echo off
c:
dir

执行结果如下:

发现所有执行的命令都没有现实,知识输出了命令的执行结果。
下面看第17行:
if "%OS%" == "Windows_NT" setlocal

可以判断这是一个判断语句,如果%OS% == "Windows_NT" 那么执行setlocal,这里面有两个不好理解的东西,%OS%为何物,setlocal又是做了什么事情,%%是从操作系统的环境变量中读取信息,我们可以看一下,在操作系统中,应该有个OS环境变量,

下面我们来尝试一下,同样在test.bat中加入测试内容:
1 @echo off
2 echo %OS% 
3 echo %Path%

      查看执行结果:

    不出意料果然是在读取环境变量中的内容,但是当我把环境变量中的内容作修改以后呢?

查看执行结果:

       发现此时%OS%已经改变。下来需要看看setlocal这个命令做了些什么操作,下面看一下在microsoft网站上对于setlocal的讲解,setlocal:
Starts localization of environment variables in a batch file. Localization continues until a matching endlocal command is encountered or the end of the batch file is reached.

      在批处理文件中环境变量的本地化操作。意思就是在setlocal命令执行以后,对于环境变量所做的修改只是对于本批处理文件有影响,这个影响直到对应的endlocal命令,或者批处理文件结尾处时消除。举例子证明一下:
1 @echo off
2 setlocal
3 path=g:\programs\superapp;%path% 
4 echo %Path%
5 endlocal
6 echo %Path%

      如果按照上面的说法,两次输出的%Path%应该不一样,第一次比第二次多输出g:\programs\superapp,下面看结果

      所以if "%OS%" == "Windows_NT" setlocal的意思就是如果在环境变量中%OS%设置的是Windows_NT,那么就调用setlocal方法在本startup.bat这个批处理文件中,设置本地的环境变量。
   下面看第25行
set "CURRENT_DIR=%cd%"

这个理解起来可能很简单,问题就是%cd%这个具体是什么值,只需要尝试一下:
@echo off
set "CURRENT_DIR=%cd%"
echo %CURRENT_DIR%

其实很简单,%cd%变量就是current_dir的简写,就是批处理文件运行的当前目录,由于startup.bat都运行在tomcat的bin目录下,所有我也将test.bat放到该目录下,在我的环境中,这个地址为,D:\apache-tomcat-7.0.52-src\bin,那么执行结果为:

下面看25行
 if not "%CATALINA_HOME%" == "" goto gotHome
如果你习惯在操作系统中设置%CATALINA_HOME%这个环境变量,那么此刻执行到此处的时候,就会跳转到:gotHome节点下的语句中,
@echo off 
if not "%CATALINA_HOME%" == "" goto gotHome
echo aaa
:gotHome
echo "gotHome"

输出结果:

但是我平时真的没有设置%CATALINA_HOME%这个环境变量的习惯,所以此处我将刚才添加的%CATALINA_HOME%环境变量去掉,所以在执行
if not "%CATALINA_HOME%" == ""这条语句的时候,返回的结果为false,所以顺序执行第26行:
下面看26行的内容:
set "CATALINA_HOME=%CURRENT_DIR%"

上面已经知道了%CURRENT_DIR%这个变量时在tomcat\bin目录,在我的环境下应该就是D:\apache-tomcat-7.0.52-src\bin,如何要是设置%CATALINA_HOME%这个变量的话,%CATALINA_HOME%的值应该是tomcat所在的目录。在我的环境下应该就是D:\apache-tomcat-7.0.52-src。
接下来查看27行的内容:
if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome

这个意思就是如果存在%CATALINA_HOME%\bin\catalina.bat这个批处理文件,那么就跳转到:okHome节点下面的代码中,如果这个文件不存在那么就顺序执行28行的代码,但是一般情况下,这个文件都是存在的,我也想不出什么情况下(排除人为删除),这个文件不存在,但是还是看一下28-30行的代码:
cd ..
set "CATALINA_HOME=%cd%"
cd "%CURRENT_DIR%"

这个意思很明了,以我的环境为例,如果不存在D:\apache-tomcat-7.0.52-src\bin\catalina.bat文件,那么就到D:\apache-tomcat-7.0.52-src这个目录下,此时的%cd%的值应该为D:\apache-tomcat-7.0.52-src,设置CATALINA_HOME变量为D:\apache-tomcat-7.0.52-src,因为前面设置过%CURRENT_DIR%的值为D:\apache-tomcat-7.0.52-src\bin,所以在此进到D:\apache-tomcat-7.0.52-src\bin这个目录下。
下面是gotHome节点了,看一下gotHome节点的命令:
:gotHome
if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome
echo The CATALINA_HOME environment variable is not defined correctly
echo This environment variable is needed to run this program
goto end

从上面的程序看来,如果设置了%CATALINA_HOME%变量,那么直接跳转到执行gotHome节点,如果没有定义这个变量的话就顺序执行到这来,gotHome主要做的工作就是判断%CATALINA_HOME%\bin\catalina.bat这个文件是不是存在,如果存在,那么到:okHome节点,如果不存在,那么输出错误信息,然后直接跳转到文件的末尾处,结束本次程序。下面请看cataline.bat文件存在的情况下,执行的:okHome节点的信息:

:okHome

set "EXECUTABLE=%CATALINA_HOME%\bin\catalina.bat"

rem Check that target executable exists
if exist "%EXECUTABLE%" goto okExec
echo Cannot find "%EXECUTABLE%"
echo This file is needed to run this program
goto end


:ok节点的操作同样只是做了一下校验,把%CATALINA_HOME%\bin\catalina.bat赋值给变量EXECUTABLE,然后再做一次EXECUTABLE变量的校验,同样,如果校验成功的话,执行:okExec节点下的操作,如果不存在,输出相关的错误信息,然后直接跳转到文件的末尾处,结束本次执行。接下来的部分,不能分开说明,所以把45-53行拿出来一起说明:

:okExec

rem Get remaining unshifted command line arguments and save them in the
set CMD_LINE_ARGS=
:setArgs
if ""%1""=="""" goto doneSetArgs
set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1
shift
goto setArgs
:doneSetArgs

call "%EXECUTABLE%" start %CMD_LINE_ARGS%

:end


      将:setArgs节点下的返回结果赋值给CMD_LINE_ARGS变量。在:setArgs的第一条命令,如果%1也就是第一个参数为空,那么直接跳转到:doneSetArgs节点,执行catalina.bat文件,此时应该没有传递参数。如果存在参数的话,那么就循环所有的参数,将所有的参数链接在一起,赋值给CMD_LINE_ARGS变量,然后执行catalina.bat文件,此时应该有传递参数。 
 
       到此关于tomcat在windows操作系统下的的启动文件startup.bat的分析就结束了,其实startup.bat文件的作用就是找到catalina.bat文件,然后把参数传递给它,至于catalina.bat文件都做了什么操作,等下一章在分析把。

5. java.io.FileNotFoundException: C:\Program Files\Apache Software Foundation\Tomcat 7.0\logs\

404有可能是是启动失败,至于前面的报错,你看下是不是你的c盘权限问题,有可能是权限控制导致tomcat无法正常访问你的文件或者文件夹,再或者看看对应的那个文件有没有被设置为只读属性。。

java.io.FileNotFoundException: C:\Program Files\Apache Software Foundation\Tomcat 7.0\logs\

6. tomcat环境变量配置出问题

配置好了,启动tomcat 在bin目录下的startup.bat文件,单击启动,然后才能访问呢!1直接下载个解压版的,直接解压即可,无需配置!
端口号被别的程序占用了,所以启动不了,端口号可以在配置文件中修改,如果改了不行的话,你可以试试别的版本因为tomcat解压版除了端口有问题,别的问题几乎没有,它也不需要什么环境变量的配置的!改端口号,在tomcat的conf目录下server.xml
修改下面的
 <Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443" />
8080 可以改为别的,再重启试试。

7. 我的tomcat7.0.52登陆不上

在上述的最后一行前面加


重启服务,用tomcat/tomcat登陆。

我的tomcat7.0.52登陆不上

8. eclipse运行jsp 运行tomcat遇到问题

估计是你的tomcat配置有问题,或者就是你的tomcat有问题,插件找不到tomcat的目录或者tomcat下面的关键文件了