Nasıl phpmyadmin özel dizin eklemek için?


11

Benim bilgim apacheaz olduğu için. Büyümesine izin vermek istiyorum, bu yüzden LAMP ile daha fazla deneyimim olacaktı. Bugün için sıcak sorum:

Web sunucusuna özel dizin nasıl eklenir? (örneğin phpmyadmin)?

Amacım, içindeki özel web siteleriyle özel adresler oluşturabilmektir. Diyelim ki benim özel dizinim var: /media/my/web/portal1ve istemci aradığında yüklemek istiyorum

http://localhost/myportal1 at webbrowser. 

Bana birkaç açıklama kelimesi olan adımların bir listesini verebilir misiniz?

Yanıtlar:


26

Apache yapılandırma dosyanızı düzenleyin ve bir Takma Ad Yönergesi ekleyin . Örneğin, varsayılan dosyayı kullanalım .

sudo -e /etc/apache2/sites-available/default

VirtualHost yönergesine bir bölüm ekleyerek takma adınızı yapın :

Alias /database/ "/usr/share/php5/phpmyadmin/"
<Directory "/usr/share/php5/phpmyadmin/">
    Order allow,deny
    Allow from all
    # New directive needed in Apache 2.4.3: 
    Require all granted
</Directory>

Kaydet ve yeniden başlat: sudo /etc/init.d/apache2 restart

Veya diğer referans için:

sudo -e /etc/apache2/sites-available/default

Ve içindekiler ...

Alias /myportal1/ "/media/my/web/portal1/"
<Directory "/media/my/web/portal1/">
    Order allow,deny
    Allow from all
    # New directive needed in Apache 2.4.3: 
    Require all granted
</Directory>

Kaydet ve yeniden başlat: sudo /etc/init.d/apache2 restart

Dizin yönergelerine daha fazla yönerge ekleyin , örneğin

Options Indexes FollowSymLinks 

Bkz. Http://httpd.apache.org/docs/2.2/mod/core.html#directory

Neyin peşindeydiniz?


Bu değişiklikleri yaptıktan sonra apache'yi yeniden yüklemenin yeterli olduğunu düşünüyorum?
Jo-Erlend Schinstad

oh - evet ... teşekkürler Jo-Erland Schinstad

Teşekkürler Cristopher! Aradığım şey buydu! :)
Adrian K.

Yasak hataları önlemek için bu satırı <Directory> bölümüne ekledim, umarım düzenleme yakında kabul edilecektir: Tümü onayla
Richard

3
Takma adın sonuna eğik çizgi eklemenize gerek yoktur. Kullanıcıyı kesinlikle URL'ye yazmaya zorlar. Bu durumda Alias ​​/ myportal1 / dışında takma ad / myportal1 /. Eksik eğik çizgi not alın.
Gilberto Albino

6

Daha basit bir alternatif, belge kökünden yumuşak bir bağlantı oluşturmaktır. Örneğin, belge kökü "/ var / www" (çoğu Linux sisteminde varsayılan) ise, aşağıdaki komut hile yapar:

sudo ln -s /media/my/web/portal1 /var/www/myportal1

Bu hemen işe yarar - Apache sunucusunu yeniden yüklemenize bile gerek yoktur.


1

Apache, sisteminizdeki, tıpkı sizin gibi bir kullanıcıdır, ancak giriş yapamaz. Bu, dosya erişiminin Apache için sizin için olduğu gibi olduğu anlamına gelir. Bu nedenle, önce Apache / media / bir şeyde bir dizin sunacaksa, Apache'nin dizini ve dosyalarını okuma erişimi olmalıdır.

İkinci olarak, bu dizini ana sayfası olarak kullanan bir site kurmak için, / etc / apache2 / sites-available / siteniz gibi site-dosyaları yaratırsınız. Bu, vhosting denen şeyin bir parçasıdır. İki farklı tür vardır; biri isme (alan adı), diğeri IP'ye göre. En yaygın kurulum, ad tabanlı vhost'ları kullanmaktır. Bununla ilgili daha fazla bilgiyi buradan edinebilirsiniz: http://httpd.apache.org/docs/2.2/vhosts/


Referanslarınız için teşekkürler. Ben kesinlikle bu kazmak olacak! :)
Adrian K.

0

İki satırda çok basit:

sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf.d/phpmyadmin.conf

Sonra

sadece "phpmyadmin.conf" dosyasını düzenleyin

pico /etc/apache2/conf.d/phpmyadmin.conf

ve "loool" ya da her neyse değiştir :)

Alias /loooool /usr/share/phpmyadmin

<Directory /usr/share/phpmyadmin>

SetEnvIfNoCase User-Agent "^ZmEu" bad_bot
SetEnvIfNoCase User-Agent "^BackDoorBot" bad_bot
SetEnvIfNoCase user-agent "^BlackWidow" bad_bot 
SetEnvIfNoCase User-Agent "^BotALot" bad_bot

tüm bu yeniden yükleme apache sonra: D

service apache2 reload

tadaaa: D ciao :)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.