Saya mencoba mengkonfigurasi akses lincah menggunakan Apache http. Itu membutuhkan otentikasi. /etc/apache2/sites-enabled/mercurial
Penampilan saya seperti ini:
NameVirtualHost *:8080
<VirtualHost *:8080>
UseCanonicalName Off
ServerAdmin webmaster@localhost
AddHandler cgi-script .cgi
ScriptAliasMatch ^(.*) /usr/lib/cgi-bin/hgwebdir.cgi/$1
</VirtualHost>
Setiap tutorial yang saya baca di internet memberitahu saya untuk memasukkan baris ini:
AuthType Basic
AuthUserFile /usr/local/etc/httpd/users
Tetapi ketika saya melakukannya saya mendapatkan kesalahan berikut:
# /etc/init.d/apache2 reload
Syntax error on line 8 of /etc/apache2/sites-enabled/mercurial:
AuthType not allowed here
Distro saya adalah Ubuntu khusus yang disebut Turnkey Linux Redmine
apache-2.2
authentication
httpd
mercurial
http-authentication
Jader Dias
sumber
sumber
<Location /opt/mcmap/shapefiles.php> AuthType Kerberos AuthName KerberosLogin KrbServiceName HTTP/intranet.spectrumasa.com KrbMethodNegotiate On KrbMethodK5Passwd On KrbAuthRealms DOMAIN.COM Krb5KeyTab /etc/httpd/conf/intranet.keytab require valid-user Options Indexes MultiViews FollowSymLinks AllowOverride All Order allow,deny Allow from all SetOutputFilter DEFLATE </Location>
require valid-user
bagian itu. Contoh lengkap bisa menjadi hal yang luar biasa. Terima kasih.<Location />
dalam hal apapun untuk tidak mendapatkan kesalahan sintaks saat memuat file konfigurasi.<Location />
diedit<Location>
dengan pesan log internal "diperbaiki ... untuk menghindari banyak masalah", tetapi tidak mengatakan apa pun tentang alasan sebenarnya dalam jawaban itu sendiri? Tidak ada yang namanya<Location>
direktif (yaitu satu tanpa lokasi) di Apache. Itu pasti menyebabkan masalah sekarang. ;) (Lihat misalnya di atas.)Saya menjalankan Apache2 di ubuntu 10.04 - masalah yang sama dan terima kasih atas solusinya. Saya menemukan bahwa saya harus meletakkan konfigurasi
/etc/apache2/apache2.conf
Anda dapat membuat nama pengguna dan kata sandi menggunakan htpasswd. File baru:
Untuk menambahkan file yang ada:
sumber
Anda dapat melindungi Lokasi atau Direktori. Untuk Direktori, tambahkan sesuatu seperti:
Anda juga dapat menambahkan
Deny
danAllow
mengarahkan untuk kontrol yang lebih baik.sumber
Sepertinya Anda menentukan pengaturan autentikasi di dalam
VirtualHost
. Biasanya, pengaturan ini ditentukan di bawahDirectory
arahan.Anda juga bisa menggunakan
.htaccesss
file, tetapi menentukan di conf Apache adalah default yang baik, karena memiliki eksposur yang lebih sedikit.Dokumentasi Apache
sumber
Saya menjalankan Apache2 di ubuntu 10.10. Saya mengalami masalah dengan semua solusi di atas, tetapi ini bekerja dengan baik (dari apache docs):
Perbedaan terbesar dari jawaban di atas tampaknya adalah arahan AuthBasicProvider yang diatur ke "file" dan arahan Require termasuk bit "user" sebelum nama pengguna yang sebenarnya.
Semoga ini bisa membantu seseorang.
sumber
Kami menjalankan versi apache yang dioptimalkan untuk memori, dan mengalami masalah ini.
Ini karena baris berikut tidak ada dalam konfigurasi apache:
sumber