标签:mamp

浏览模式: 标准 | 列表 | 图文
简易重启mac 下的mamp pro

简易重启mac 下的mamp pro

简单的弄一下。因为有时候要改配置,然后打开mamp,点击重启会耗时特别长。。。。所以简单的弄了一下

#!/bin/bash

function start(){
/Applications/MAMP/Library/bin/httpd -f "/Library/Application Support/appsolute/MAMP PRO/conf/httpd.conf" -k start
}

function stop(){
/Applications/MAMP/Library/bin/httpd -f "/Library/Application Support/appsolute/MAMP PRO/conf/httpd.conf" -k stop
}

function restart(){
(stop)
(start)
}

function status(){
ps aux|grep httpd
}

echo "which do you want to?input the number."
echo "1. start"
echo "2. stop"
echo "3. restart"
echo "4. status"
read num

case "$num" in
[1] ) (start);;
[2] ) (stop);;
[3] ) (restart);;
[4] ) (status);;
*) echo "exit";;
esac
其实没啥难度就是这么几行代码。连路径都没有定义变量。但一般情况下够用了,复制不成功的,可以直接打开://neatstudio.com/mamp.txt
nginx + acme.sh + frp ,轻松本地+线上 SSL泛域名

nginx + acme.sh + frp ,轻松本地+线上 SSL泛域名

如题的组合。由于本地写代码,比较不方便搞成SSL,毕竟自签名证书现在大部分浏览器都不认了。而且现在微信开发(小程序)、APP等都只认SSL。所以才有了利用frp来进行SSL穿透。

步骤我说的简单一点。不详细 说了

如果不需要内网穿透,其实就是 nginx + acme.sh 就Over了,只是nginx需要配置一下(记得泛域名使用的是fullchain.cer,普通 的单域名是用的xxx.domain.cer)

如果需要内网穿透,步骤简要如下

1、frps -> 设置vhost_http_port(本次假定为8888) ,然后利用supervisor 管理frp (可以使得frp异常崩溃后能够重启)【或者使用systemd,各人喜欢】

2、设置nginx,server_name 为 *.app.neatstudio.com (以app.neatstudio.com为例),在proxy_pass中选择使用upstream,设置为刚才的vhost_http_port,例:

upstream app.neatstudio.com {
server 127.0.0.1:8888;
}

server {
listen 80;
server_name *.app.neatstudio.com;

listen 443 ssl;
ssl on;
ssl_certificate /etc/nginx/ssl/*.app.neatstudio.com.fullchain.cer;
ssl_certificate_key /etc/nginx/ssl/*.app.neatstudio.com.key;

ssl_session_cache shared:SSL:20m;
ssl_session_timeout 10m;

ssl_prefer_server_ciphers on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS;

# turn on the OCSP Stapling and verify
ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate /etc/nginx/ssl/*.app.neatstudio.com.fullchain.cer;



add_header Strict-Transport-Security "max-age=31536000";

location / {
proxy_pass http://app.neatstudio.com;
include /etc/nginx/proxy_params;
}
}

3、在本地(或者任意一台想有https的服务器上)安装frpc,设置subdomain就行了,例:

[test.app.ns.com]
type=http
port=80
subdomain=test

这样就OK了。[]里的test.app.ns.com,为什么取这个名字?是因为。。。frp的客户端中的任意[]包含的TAG,都不能重名(切记)

然后一切Over(因为我使用mac+mamp,所以会更方便的管理域名)

MAMP Pro 3.05 on Mavericks updated to Yosemite - Apache does not start

MAMP Pro 3.05 on Mavericks updated to Yosemite - Apache does not start

今天新版发布,立刻升级,结果就这MAMP玩意不能启动了。启动的时候直接报错:

dyld: Symbol not found: _iconv Referenced from: /usr/lib/libmecabra.dylib Expected in: /Applications/MAMP/Library/lib/libiconv.2.dylib in /usr/lib/libmecabra.dylib /Applications/MAMP/Library/bin/apachectl: line 80: 2799 Trace/BPT trap: 5 $HTTPD "$
开始没注意,是以为80端口没有足够的权限,再仔细一看,怎么是动态 链接库出问题了?难道是补丁没更新?
于是打开Xcode,果然说有必须要安装的组件等着我更新。更新完后再启动,还是这个问题。
不得已Google一下,果然在stackoverflow上有人有提出了类似的问题,并且被解决了:http://stackoverflow.com/questions/25139599/mamp-pro-3-05-on-mavericks-updated-to-yosemite-apache-does-not-start,解决的方法居然非常简单,只要将MAMP目录下的envvars改名成_envvars就可以了:
mv /Applications/MAMP/Library/bin/envvars /Applications/MAMP/Library/bin/_envvars
记得不要CP,cp没用。。估计会优先检查这个envvars,如果文件存在就用这里面的环境变量了。改名后就不管了
如果觉得有用,记得去上面的链接帮别人点个赞。哈