網頁

2015年8月26日 星期三

Yosemite 10.10.5更新後Apache無法啟動

前陣子更新到Yosemite 10.10.5後,今天發現apache無法啟動了,使用apachectl configtest指令檢查後,發現ssl設定看來在這次更新後被覆蓋掉了。
$sudo apachectl configtest
AH00526: Syntax error on line 144 of /private/etc/apache2/extra/httpd-ssl.conf:
SSLCertificateFile: file '/private/etc/apache2/server.crt' does not exist or is empty

照著Mac學習筆記-開啟HTTPS那時所寫的,server.crt及server.key檔放置的path修改後,就又正常了

參考網址:
Mac學習筆記-開啟HTTPS
Yosemite 10.10.5 Update Disabled Apache

2015年8月4日 星期二

在OS X安裝mcrypt

安裝就執行底下命令(php55-mcrypt非必要,只是我有這需求)
$brew install mcrypt php55-mcrypt

若之前有安裝過freetype,就會出現底下訊息
==> Installing php55-mcrypt from homebrew/homebrew-php
Error: You must `brew link freetype' before php55-mcrypt can be installed

執行底下命令
$brew link --overwrite freetype
回應如下
Linking /usr/local/Cellar/freetype/2.5.5... 8 symlinks created

再執行底下命令
$brew install  php55-mcrypt

回應如下
==> Installing php55-mcrypt from homebrew/homebrew-php
==> Installing php55-mcrypt dependency: autoconf
......以下省略

這樣就ok了

參考網址:
Installing mcrypt extension for PHP on OSX Mountain Lion
How to Install mcrypt for php on Mac OSX 10.9 Mavericks for a Development Server

2015年8月1日 星期六

設定好router卻無法直接在url上直接使用

安裝好Laravel後,在看router這篇時,寫成底下這樣
Route::get('lava', function () {
    return 'Hello World';
});

卻發現無法直接使用http://localhost/~alvin/lara/lava,而要用http://localhost/~alvin/lara/index.php/lava,多了index.php實在很奇怪。雖然認為問題出在.htaccess,但一直不知道是什麼問題,看了這篇.htaccess rewriterule not working correct on mac才想到因為Mac上我是直接使用user下的Sites,所以應該要做RewriteBase的設定才是,如下設定
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On
    RewriteBase /~alvin/lara #新增這行

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

這樣就可以正常使用了

參考網址:
How can I remove “public/index.php” in the url generated laravel?
.htaccess rewriterule not working correct on mac