Apache是普通服务器,本身只支持html即普通网页,可以通过插件支持PHP,还可以与Tomcat连通(单向Apache连接Tomcat,就是说通过Apache可以访问Tomcat资源。Tomcat无法取访问Appache资源)。Appache只支持静态网页,但像asp,php,cgi,jsp等动态就需要Tomcat来处理。对于Apache Tomcat 估计很多童鞋都会,那么今天就简单说下在mac上进行tomcat的安装;
昨天下载了一下Tomcat本以为很快完成,不过还是遇到了一些坑,简单的介绍下安装过程:
1.下载Tomcat
mac下载zip和tar.gz都行,我下载的是tar.gz
2.压缩之后直接拷贝到资源库中,压缩后的文件夹名称为Tomcat8,具体位置如下:
3.打开终端,输入以下命令Library/Tomcat8/bin/startup.sh,浏览器中输入localhost:8080,就可以看到一下效果:
如果遇到提示No such file or directory错误提示,需要执行sudo chmod 755 Library/Tomcat/bin/*.sh,然后重新执行startup.sh,如果想停止Tomcat,直接执行shutdown.sh即可。在执行sudo时,必须使用带密码的用户。如果每次写路径比较麻烦,这个时候需要设置环境变量。
4.设置Tomcat的环境变量:
①输入touch .bash_profile ( pico .bash_profile 也行)
②打开bash_profile open -e .bash_profile(nano .bash_profile亦可)
③输入export PATH=$PATH:/Users/keso/Library/Tomcat8/bin
④更新配置的环境变量source .bash_profile
⑤验证是否成功,终端中输入$PATH
显示如下-bash: /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/keso/Library/Tomcat8/bin: No such file or directory
5.终端中输入startup.sh, startup.sh后出现类似 “Permission denied” ,这个时候需要对目录进行权限设置:输入 sudo chmod 755 Library/Tomcat8/bin/*.sh 回车,设置文件的读写执行权限;
6.设置完成之后startup.sh会显示启动:
7.关闭需要使用shutdown.sh即可;
题外话:sudo通常为系统超级管理员755 代表用户对该文件拥有读,写,执行的权限,同组其他人员拥有执行和读的权限,没有写的权限,其他用户的权限和同组人员权限一样。777代表,user,group ,others ,都有读写和可执行权限。
管理Mac OS自带的Apache
Mac OS X 内置了Apache 和 PHP
管理方法一:
打开“系统设置偏好(System Preferences)” -> “共享(Sharing)” -> “Web共享(Web Sharing)”
管理方法二:
启动Apache:运行“sudo apachectl start”,再输入root帐号密码
停止Apache:运行“sudo apachectl stop”,
查看Apache:版本:运行“sudo apachectl -v”,
重启Apache:运行“sudo apachectl restart”
Mac OS中Apache文件默认存放位置
Mac OS 的Apache2的配置文件(httpd.config)保存在/etc/apache2
Mac OS 的Apache2的程序文件(httpd, ab) 保存在/usr/sbin/
Mac OS 的Apache2的默认根目录:/Library/WebServer/Documents
修改Apache2的配置文件,在终端运行“sudo vi /etc/apache2/httpd.conf”,打开Apche的配置文件进行修改。
Mac OS中修改hosts配置
运行“sudo vi /etc/hosts”,打开hosts配置文件,可本机DNS解悉。
Mac OS自带的Apache的ab压力测试工具说明
MAC OS自带了一个apache2.2.22,配套的ab测试工具不好使,无法使用。
所以2012年3月25日,在/usr/local/apache中安装了新的apache 2.4.1。
并把/usr/local/apache/bin/ab拷贝到了/usr/sbin/ab中,覆盖了原有的AB。
ab的版本都是2.3,小号不同。现在ab测试工具好使了。
Mac OS运行PHP
在终端中运行“sudo vi /etc/apache2/httpd.conf”,打开Apache的配置文件。
找到“#LoadModule php5_module libexec/apache2/libphp5.so”,把前面的#号去掉,保存并退出vi(在命令行输入:wq)。
运行“sudo cp /etc/php.ini.default /etc/php.ini”,这样就可以运行sudo vi /etc/php.ini来编辑php.ini配置各种功能了。比如:
Java代码
;通过下面两项来调整PHP提交文件的最大值,如phpMyAdmin中导入数据的最大值
upload_max_filesize = 2M
post_max_size = 8M
;通过display_errors来控制是否显示PHP程序的报错信息,这在调试PHP程序时非常有用
display_errors = Off
运行“sudo apachectl restart”,重启Apache,这样PHP就可以用了。
运行“sudo cp /Library/WebServer/Documents/index.html.en /Library/WebServer/Documents/info.php”,即在Apache的根目录下复制index.html.en文件并重命名为info.php。
在终端中运行“sudo vi /Library/WebServer/Document/info.php”,这样就可以在vi中编辑info.php文件了。
在“It’s works!”后面加上“”,然后保存之。如此就可以在//localhost/info.php中看到有关PHP的信息,比如10.8中内置PHP版本号是5.3.13。
Mac OS终端配色
修改~/.bash_profile文件,在文件中加入下面几行配置。
# for color
export CLICOLOR=1
# h:W u$
export PS1="[33[01;33m]u@h[33[01;31m] W$[33[00m] "
# grep
alias grep="grep --color=always"
Mac OS安装Nginx
安装nginx时依赖的PCRE、zlib库,我系统里已自带这些。
但使用系统自带的pcre时,make Nginx报错:
-lpcre -lcrypto -lcrypto -lz
Undefined symbols for architecture x86_64:
"_pcre_free_study", referenced from:
_ngx_pcre_free_studies in ngx_regex.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
make[1]: *** [objs/nginx] Error 1
make: *** [build] Error 2
我本机使用的是brew包管理器(不喜欢ports)
使用brew包管理工具重新安装pcre(brew install pcre),问题没有解决。
又把pcre卸载了。
手动安装pcre,也不行。
只能按照料官方说的,安装mac ports,然后利用port安装pcre。
sudo port install pcre