酷!學園

技術討論區 => Linux 討論版 => 主題作者是: stuart3501 於 2016-01-07 11:47

主題: 如何讓apache 存取到已經mount samba server的目錄
作者: stuart35012016-01-07 11:47
各位前輩您好
我在ubuntu 14.04上面使用samba mount 一個CIFS的目錄
然後依照user需求,安裝一個apache作為http file server
這邊裝完的apache是用symbolic link連結到上述的CIFS目錄
現在問題是
我在fstab使用
//10.11.11.11/public /CIFS cifs username=smbuser,password=smbuser,uid=www-data,gid=www-data,iocharset=utf8 0 0
可以順利讓此台ubuntu存取這個CIFS目錄
可是apache始終沒辦法看到CIFS的目錄
log是
AH00037: Symbolic link not allowed or link target not accessible: /var/www/html/package
我照著昨天搜尋stackoverflow的結果
<Directory /var/www/html>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
# Options Indexes FollowSymLinks
# AllowOverride None
# Require all granted
</Directory>

新增這些在apache2.conf

截至目前為止,我依然找不出問題

ps:因公司資安,我關閉了http,只留自認證的https

/etc/apache2/sites-enabled/ssl.conf

ssl.conf中的前半段內容是

<IfModule mod_ssl.c>
<VirtualHost _default_:443>
ServerAdmin webmaster@localhost

DocumentRoot /var/www/html

DocumentRoot /var/www/html
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>

感謝各位前輩
主題: Re: 如何讓apache 存取到已經mount samba server的目錄
作者: netman2016-01-07 22:06
直接在server上面看link是否有內容呢?
或是不要用FollowSymlink而改用Alias如何?
主題: Re: 如何讓apache 存取到已經mount samba server的目錄
作者: stuart35012016-01-08 14:23
直接在server上面看link是否有內容呢?
或是不要用FollowSymlink而改用Alias如何?

netman大大您好
若是透過指令去存取
確實是都可以正常連到目的地CIFS folder

補充一下
我現在在samba的CIFS中有個主目錄A
目錄結構是
           A-|
               |-B-C
               |-D-E-F
               |-G

我在Apache設定
Alias A "/mnt/A"

我可以透過https://ip/A
看到A的目錄列表
可是我若點其中的任一個子目錄
B,C,D,E,F,G
apache都是回應Not Found
主題: Re: 如何讓apache 存取到已經mount samba server的目錄
作者: netman2016-01-10 17:37
alias 的話,在 A 後面加個 / 看看: alias A/ "/mnt/A/"

還有,selinux有關掉嗎?  ^^
主題: Re: 如何讓apache 存取到已經mount samba server的目錄
作者: stuart35012016-01-11 16:55
alias 的話,在 A 後面加個 / 看看: alias A/ "/mnt/A/"

還有,selinux有關掉嗎?  ^^

netman大大
跟您回報一下
我確定selinux被我disabled了
alias這個方式可能真的沒用

但是我在ssl.conf中修改為
<Directory /cifs/>
Options Indexes FollowSymLinks
AllowOverride none
# Order allow,deny
# Allow from all
Require all granted

這樣就可以了
感謝前輩