File konfigurasi htaccess

Mari kita mulai dari jauh dengan tujuan agar para siswa dapat melihat bagaimana file yang dijelaskan dalam artikel itu bekerja. Untuk mengerjakan situs web di Internet, Anda tidak hanya perlu PC dan akses ke jaringan, namun juga pemrograman luar biasa yang diperkenalkan di dalamnya, yang memberikan akses ke informasi yang memanfaatkan konvensi HTTP dan HTTPS. Produk ini adalah server web. Ada beberapa jenis server web, namun yang paling dikenal adalah Apache. Ini didasarkan pada kode sumber terbuka, gratis, terus ditingkatkan dan ditingkatkan, kompatibel dengan banyak skrip, dan bekerja pada hampir semua platform, termasuk Windows, Linux, Netware 5.x.

Apache diatur melalui dokumen desain yang disimpan di organisasi konten. Dengan bantuan mereka, Anda dapat menetapkan standar eksplisit aktivitas server web. Catatan desain prinsip disebut httpd.conf atau apache.conf (bergantung pada pengangkutan OS). Sebagian besar waktu, semua pengaturan server dapat ditentukan di sini, dan pada dasarnya teknik ini paling baik mengingat fakta bahwa:

mengurangi waktu respons server web ketika disebutkan (jadi setiap kali server web dijalankan, Apache tidak akan membaca dengan teliti semua katalog untuk .htaccess); beberapa pesanan, misalnya, pesanan modul mod_rewrite, dalam banyak hal, bekerja lebih baik dari catatan desain prinsip.

Meskipun demikian, tidak semua klien server dapat mendekati dokumen ini (misalnya, karena memfasilitasi bersama), sehingga sisanya ditawari catatan pengaturan server web tambahan - .htaccess (dengan setetes menjelang dimulainya nama).

Daftar isi


  1. Apa .htaccess berdiri untuk
  2. Cara membuat file .htaccess
  3. Sintaks .htaccess
  4. Peluang htaccess
  5. Kontrol akses
  6. Bekerja dengan kesalahan server web
  7. Menyesuaikan redirect 301 dalam htaccess
  8. modul pengarahan ulang penulisan ulang mod
  9. Menentukan penyandian
  10. Peluang lain
  11. Jika .htaccess tidak berfungsi
  12. Beberapa tips lagi tentang bekerja dengan .htaccess
  13. Tautan yang bermanfaat

Untuk apa .htaccess dan untuk apa?


File (atau file) .htaccess akan menetapkan aturan untuk server web hanya di direktori di mana ia berada dan direktori turunannya, tanpa perubahan global dalam pengoperasian seluruh server. Kemampuan untuk menggunakan .htaccess ditentukan oleh direktif (yaitu, perintah) - AllowOverride - dalam file konfigurasi utama httpd.conf, nama yang secara langsung menunjukkan bahwa pengaturan di dalam .htaccess mengambil prioritas di atas pengaturan di httpd.conf (Kecuali jika tidak dibatasi oleh semua arahan AllowOverride yang sama). Dengan arahan ini, Anda dapat mengizinkan segalanya, dan Anda bisa - hanya beberapa tindakan. Instruksi lengkap untuk penggunaannya dapat ditemukan di situs web Apache.

Dengan itu, setiap kali server web diakses, Apache akan memindai semua direktori untuk .htaccess. Perubahan pada file valid segera setelah menyimpan - restart seluruh server web tidak diperlukan (tidak seperti perubahan dalam httpd.conf).

Nama file .htaccess adalah umum, tetapi sama sekali tidak wajib. Anda dapat menetapkan nama lain di httpd.conf menggunakan arahan AccessFileName, misalnya:

AccessFileName .config

Cara membuat file .htaccess


Seperti yang telah disebutkan, file konfigurasi memiliki format teks, dan Anda juga dapat membuat .htaccess menggunakan editor teks (misalnya, Notepad atau NotePad ++ di Windows).

Nama file .htaccess (dengan titik di awal);

ketik - "Semua file";

bungkus kata;

Mode ASCII (saat mengunggah .htaccess ke hosting menggunakan protokol FTP).

Apache adalah server web yang peka terhadap huruf besar-kecil, jadi penting untuk menuliskan namanya dalam huruf kecil: .HTaccess dan .htaccess adalah file yang berbeda.

File Mac OS dimulai dengan titik tidak terlihat. Oleh karena itu, Anda dapat menyebutnya secara berbeda dan setelah itu, mentransfer melalui FTP ke hosting, ganti namanya. Biasanya mereka menempatkan file di direktori root server web (/ public_html) atau di direktori root situs (/public_html/site.com/).

Sintaks .htaccess


Sintaks .htaccess mirip dengan sintaksis httpd. Untuk setiap arahan, garis terpisah diasumsikan. Untuk kenyamanan Anda sendiri, Anda dapat menambahkan komentar ke file menggunakan tanda #, dan nilai setelah # akan diabaikan oleh server web. Trik ini dapat digunakan untuk menonaktifkan arahan apa pun. Itu tidak perlu dihapus sepenuhnya dari file - cukup komentar saja.

Kemungkinan file konfigurasi sangat besar. Di bawah ini adalah pengaturan dasar dalam .htaccess.

Peluang htaccess


Kontrol akses


Larangan akses web:

Pesanan Ditolak, Bolehkan
Tolak dari semuanya

Larangan akses web, kecuali untuk IP:

order deny, allow deny from all allow from xxx.xxx.xxx.xxx 

Larangan akses web untuk IP:

 Order allow, deny Allow from all Deny from xxx.xxx.xxx.xxx 

Larangan akses file:

 <Files private.html > Order allow, deny Deny from all 

Keamanan direktori dengan kata sandi:

 AuthType Basic AuthName "Directory Name" AuthUserFile /home/cpanel_user/.htpasswds/public_html/smth/passwd require valid-user # where AuthName "Directory Name is the secured directory name, nd # /home/cpanel_user/.htpasswds/public_html/smth/passwd is the file location with the password. 

Bekerja dengan kesalahan server web


Terkadang, alih-alih halaman yang diharapkan, pengunjung dapat menemukan respons server web dalam bentuk kesalahan dengan ringkas, tetapi tidak selalu jelas untuk pengguna yang sederhana, penjelasan alasannya. Daftar lengkap kode status dapat ditemukan di Wikipedia. Untuk kesalahan yang paling umum (misalnya, 404 atau 500), diinginkan untuk membuat halaman Anda sendiri yang terlihat lebih baik dan menyajikan rute keluar ke pengunjung. Ini diatur sebagai berikut:

ErrorDocument 404 yourdomain.com/error/404.html
# di mana yourdomain.com/error/404.html adalah jalur ke halaman yang dibuat.

Menyesuaikan redirect 301 dalam htaccess


Untuk membuat redirect permanen, direktif 301 redirect digunakan, yang mentransfer seluruh berat halaman ke url baru (oleh karena itu, lebih disukai 302 redirect untuk keperluan SEO).

Mengarahkan seluruh situs ke domain baru:

 Redirect 301 / http://www.newdomain.com/ 

Redirect halaman ke yang baru:

 Redirect 301 /page1.html http://mydomain.com/page2.html 

Modul penulisan ulang pengalihan mod


Modul mod_rewrite adalah mekanisme yang sangat diperlukan untuk mengubah URL “on the fly”. Utilitasnya, dan pada saat yang sama, kesulitannya terletak pada kenyataan bahwa Anda dapat menggunakan segudang aturan yang mencakup lebih banyak variabel.

Agar modul berfungsi, pertama-tama kita perlu arahan

RewriteEngine On (termasuk mesin konversi)

Pilihan FollowSymLinks (kondisi operasi mod_rewrite).

Jika administrator server telah menonaktifkan opsi ini untuk direktori pengguna, maka mekanisme konversi tidak dapat digunakan. Pembatasan ini diberlakukan pada server hosting virtual untuk tujuan keamanan.

Untuk kenalan lebih lanjut dengan modul kami sarankan untuk merujuk ke sumbernya.

RewriteRule


Salah satu arahan paling fungsional dari modul mod_rewrite adalah RewriteRule. Untuk menentukan kondisi di mana aturan akan bekerja, direktif RewriteCond digunakan. Itu (satu atau lebih) harus ditentukan sebelum Peraturan Rewrite.

Redirect halaman ke domain baru:

 RewriteRule ^ page1 \ .html $ http://newdomain.com/ [R = 301] 

Mengarahkan situs dari domain tanpa www ke domain dari www:

 RewriteEngine On RewriteCond% {HTTP_HOST}! ^ Www \ .. * [NC] RewriteRule ^ (. *) Http: //www.% {HTTP_HOST} / $ 1 [R = 301] 

Dan sebaliknya:

 RewriteCond% {HTTP_HOST} ^ www \. (. *) $ [NC] RewriteRule ^ (. *) $ Http: //% 1 / $ 1 [R = 301, L] 

Pengalihan HTTPS (Anda harus terlebih dahulu menginstal sertifikat HTTPS):

 RewriteEngine On RewriteCond% {https}! On RewriteRule (. *) Https: //% {HTTP_HOST}% {REQUEST_URI} [R = 301, L] 

Baris-baris ini harus ditempatkan di bagian paling atas dari .htaccess.

Menentukan penyandian


Tabel simbol tempat membuka situs ditentukan oleh browser. Namun, Anda dapat mengatur penyandian default:

 AddDefaultCharset UTF-8 

Perubahan seperti itu berlaku dalam .htaccess dan ke semua halaman situs. Anda dapat mengatur penyandian untuk jenis file tertentu, misalnya windows-1251 untuk html:

 AddType "application / x-httpd-php3; charset = windows-1251" .html 

Seringkali halaman itu sendiri membawa sendiri (yaitu dalam judul) informasi tentang pengkodean yang digunakan. Penting untuk memeriksa apakah penyandian yang ditentukan dalam dokumen dan dalam file konfigurasi cocok. Utf-8 yang diberikan di sini hampir selalu diperlukan saat bekerja dengan cms populer, karena mereka dirancang untuk berbagai pengguna di seluruh dunia. Omong-omong, secara default, pengkodean yang sama dikonfigurasikan di server hosting bersama kami.

Peluang lain


- Tentukan file indeks situs:

Secara default, halaman indeks dianggap index.html. Dengan bantuan arahan berikut, Anda dapat menentukan nama file lain yang muncul lebih dulu ketika mengakses direktori:

DirectoryIndex index.php

- Arahan yang berguna adalah FilesMatch, yang menentukan batasan aturan berdasarkan nama file menggunakan ekspresi reguler. Dengan bantuannya, misalnya, Anda dapat menolak akses ke file tertentu:

 <FilesMatch "\. (htaccess | htpasswd | ini | phps | fla | psd | log | sh) $"> Order Allow, Deny Deny from all </ FilesMatch> 

Ada beberapa arahan yang tidak didukung di server hosting bersama kami, tetapi Anda dapat memperbolehkannya di VPS Anda, misalnya.

Alasannya adalah bahwa server web berjalan sebagai suPHP tidak mendukung php_flag dan nilai php_value. Oleh karena itu, kami sarankan menggunakan cPanel (subbagian “Memilih Versi PHP” sangat berguna, untuk bekerja dengan error_log - “Log Kesalahan”) atau untuk membuat file php.ini lokal untuk tujuan ini. Kami memang membawa beberapa arahan di bawah ini:

- Untuk menghindari pembekuan server web saat memproses skrip yang ditulis secara tidak benar, ada max_execution_time. Dengan bantuannya, waktu dalam detik yang dialokasikan untuk memproses skrip PHP ditunjukkan. Anda dapat menambah batas waktu server web saat menjalankan skrip:

 php_value max_execution_time 60 

- Tentukan ukuran file unggahan maksimum:

 php_value upload_max_filesize 128M (here, instead of 128, put the desired value) 

- Cetak kesalahan PHP ke file terpisah:

 php_flag log_errors on php_value error_log /home/path/to/public_html/domain/PHP_errors.log # PHP_errors.log is the name of the file, and # / home / path / to / public_html / domain - the path to it). 

PS Pada hosting bersama, sulit untuk secara akurat menentukan arahan mana yang akan bekerja di .htaccess, karena banyak dari mereka yang mengarah pada perubahan konfigurasi server web dilarang karena alasan yang jelas - perubahan ini akan memengaruhi semua pengguna di media.

Jika .htaccess tidak berfungsi


Anda dapat memeriksa operasi file dengan menulis arahan sederhana yang, dengan sintaks yang benar dan pengaturan httpd yang benar (seperti yang dijelaskan di awal artikel) harus berfungsi:

- misalnya, dengan menolak akses ke situs dari luar menggunakan arahan

 Order deny, allow Deny from all 

- atau menulis ke file serangkaian karakter tidak berarti yang bukan arahan. Jika server web berinteraksi dengan htaccess, maka, tentu saja, itu tidak akan dapat membacanya dan memberikan 500 kesalahan.

Jika masalah benar-benar ada, Anda harus terlebih dahulu mencari penyebabnya di file konfigurasi utama:

- pastikan bahwa server mengizinkan penggunaan file .htaccess: ada entri AllowOverride All (dan tidak dikomentari menggunakan #);

- verifikasi bahwa entri VirtualHost telah dibuat untuk domain. Sebagai contoh:

 <VirtualHost *: 80> DocumentRoot / www / example1 ServerName www.example.com # Other directives </ Virtualhost> 

- nama file konfigurasi tambahan ditunjukkan sesuai kebutuhan. Jika .htaccess, maka:

 AccessFileName .htaccess 

- nama host server ada (ditentukan saat membuat pengalihan URL) sebagai alamat IP dari server atau domain:

 ServerName www.example.com 

Jika alasannya bukan di httpd, Anda perlu memeriksa .htaccess sendiri untuk kesalahan sintaks. Anda dapat menggunakan layanan online (misalnya, www.htaccesscheck.com , htaccess.madewithlove.be ), atau - sumber asli, di mana ada daftar arahan lengkap, bersama dengan sintaksis.

Beberapa tips lagi tentang bekerja dengan .htaccess


Sangat diinginkan untuk membuat salinan cadangan file sebelum diedit, sehingga pada hasil terburuk Anda dapat "memutar kembali" perubahan kembali.

Kami menyarankan untuk melakukan perubahan langkah demi langkah, menggunakan arahan minimum - dan jika terjadi kegagalan akan lebih mudah untuk menghitung aturan mana yang menyebabkan kesalahan.

Meskipun perubahan langsung berlaku, cache browser belum dibatalkan - untuk memeriksa pekerjaan situs setelah mengedit .htaccess, gunakan untuk membersihkannya secara teratur atau muat halaman untuk memotong cache - melalui kombinasi tombol Ctrl + F5 (di Safari: Ctrl + R, di Mac OS: Cmd + R).

Kesalahan server web yang paling umum ketika bekerja dengan .htaccess adalah 500, dan itu menunjukkan masalah dalam sintaksis (misalnya, salah ketik dalam direktif), atau jenis arahan ini tidak diperbolehkan dalam file konfigurasi utama.

Tautan yang bermanfaat


Inspirasi untuk bekerja dengan .htaccess :
httpd.apache.org/docs/2.2/howto/htaccess.html
Banyak instruksi untuk bekerja dengan .htacess :
htaccess.net.ru
Platform blogging untuk programmer :
writeabout.tech
Generator direktif sederhana untuk .htaccess :
htaccess.ru/generator

Jika file .htaccess tidak cukup bagi Anda untuk membuat perubahan pada file konfigurasi server web, Anda dapat menyewa server yang dialokasikan di Eropa atau Amerika Serikat. Server-server ini dapat memberi Anda kesempatan untuk melakukan perubahan pada pengaturan Apache.

beli reddit upvotes
reddit buy upvotes
reddit upvotes
lalu lintas reddit
lalu lintas reddit
reddit bot lalu lintas
sumber lalu lintas reddit
perangkat lunak lalu lintas reddit
hapus reddit
upvote reddit apa itu
hapus bot reddit
hapus posting reddit
hapus pembelian reddit
hapus reddit là gì
unduh aplikasi reddit
hapus reddit ponsel
reddit pertukaran upvote
reddit upvote, downvote
reddit unduhan unduh gratis
reddit layanan upvote
reddit algoritma upvote
reddit sistem upvote
reddit grup upvote
reddit bot upvote online
memundurkan reddit
komentar reddit yang dibatalkan
reddit seluler yang dipilih
reddit yang dipilih
pos reddit yang dipilih
reddit pemungutan suara
aplikasi reddit yang dipilih
reddit bot upvoting
reddit layanan upvoting
reddit upvoting dengan banyak akun
reddit memvoting pos Anda sendiri
reddit upvoting dari ip yang sama
reddit upvoting dan downvoting
suka reddit
reddit suka membeli
suka reddit dan tidak suka
bot reddit
reddit bot api
kode sumber bot reddit
agen pengguna bot reddit
perselisihan bot reddit
peringkat bot reddit
pengembangan bot reddit
reddit bot c #
otomatisasi bot reddit
reddit bot python
uji bot reddit
reddit bot posting otomatis
ide bot reddit
reddit bot subreddit
reddit bot github
reddit bot upvote
akun bot reddit
reddit bot ti
reddit upvote bot 2019
reddit upvote bot 2018
reddit upvotes bot
reddit upvote bot github
reddit upvote bot 2017
reddit upvote bot python
reddit hapus tulisan Anda sendiri
reddit posting bot upvote
hapus posting reddit saya
reddit upvote pos sendiri
reddit upvote posting downvote
reddit upvotes buy
reddit upvote sistem downvote
reddit upvote, algoritma downvote
reddit custom upvote / downvote
bagaimana reddit sistem kerja upvote bekerja
cara kerja sistem reddit upvote
reddit sistem upvote baru
reddit komentar positif
reddit bot upvote
reddit unduh banyak akun
reddit upvote dan downvote
bot otomatisasi reddit
reddit bot python praw
python reddit bot github
reddit bot test subreddit
reddit karma bot github
reddit downvote bot github
tldr bot reddit github
reddit bot upvoting
beli reddit karma
cara mendapatkan upvotes di reddit
cara membeli upvotes reddit
beli akun reddit
beli akun reddit yang sudah tua
beli akun reddit
beli upvotes di reddit
lalu lintas reddit
reddit marketing
dapatkan reddit upvotes
klub upvotes
beli akun reddit
upvotes. klub
iklan reddit
reddit bot upvote
beli reddit karma
iklan reddit
bot reddit
reddit marketing
reddit menjual barang
reddit upvote
reddit sistem pemungutan suara baru
bayar untuk reddit upvotes
suka reddit
reddit promosikan youtube
reddit upvotes
hapus reddit
boostupvotes.com
beli reddit downvotes
beli suara reddit
membeli reddit upvotes
akun reddit untuk dijual
reddit sistem pemungutan suara
beli akun reddit
beli reddit upvote
beli akun reddit karma tinggi
beli upvotes untuk reddit
beli akun reddit baru
beli upvoat reddit
beli upvoite reddit
beli redit upvotes
bot reddit instan upvote online
upvotes reddit dibayar
proxy pribadi untuk updote reddit
reddit bot upvote online
beli akun reddit karma tinggi
beli akun reddit lama
beli akun reddit dengan karma
akun reddit murah
reddit karma gratis
akun reddit gratis dengan karma
emas reddit gratis
dapatkan upvotes reddit gratis
dapatkan redma karma
dapatkan reddit karma
akun reddit karma tinggi untuk dijual
bagaimana cara mendapatkan karma di reddit
bagaimana cara kerja reddit karma
berapa nilai akun reddit saya
cara mendapatkan lebih banyak upvotes di reddit
cara mendapatkan karma reddit
cara membuat subreddit
cara menjual di reddit
cara menggunakan reddit untuk bisnis
beli akun reddit
penjualan akun reddit
akun reddit untuk dijual
reddit auto upvote
reddit beli akun
reddit bot upvote
reddit grup upvote
reddit layanan upvote
jual di reddit
sistem upvote
beli posting reddit
beli pelanggan reddit
beli upvote
upvotes reddit murah
upvotes reddit gratis
promosi di reddit
iklan reddit
layanan promosi reddit
beli dan jual akun reddit
menjual akun reddit untuk mendapatkan uang
akun reddit karma tinggi
membeli bot reddit
beli bot reddit upvote
bot reddit online
bot updotes reddit online
beli akun dengan karma
terbalik i
upvotes. io
boostupvotes com
boostupvotes com
beli reddit upvotes
www.soar sh
melambung sh
www.passthevote com
passthevote com
www.appsally com
aplikasi com
boostupvotes.com
boostupvotes
secara aplikatif
klub upvotes
redditonfire. com
redditonfire
upvotes.space
woorke. com

Source: https://habr.com/ru/post/id460459/


All Articles