Katalog artykułów
🏆💡 Czy masz pliki .htaccess wszystkich swoich subdomen? Ich brak może wpłynąć na przekierowania, SEO i komfort użytkowania! Ten samouczek pokaże Ci, jak używać HestiaCP do zbiorczej inspekcji plików .htaccess wszystkich Twoich subdomen, utrzymując Twoją witrynę w optymalnym stanie! 🔍
Jeśli masz wiele subdomen i chcesz sprawdzić każdą subdomenę public_html Czy katalog istnieje? .htaccess pliku, możesz to zrobić za pomocą prostego skryptu Bash.
Dlaczego warto sprawdzić plik .htaccess?
.htaccess Plik ten jest ważnym plikiem konfiguracyjnym serwera Apache, który jest często używany do ustawiania przekierowania 301, przepisywania adresów URL, kontroli dostępu itp.
Jeśli subdomena .htaccess Utrata plików może spowodować obniżenie pozycji w wynikach wyszukiwania, nieprawidłowe ładowanie stron, a nawet zagrożenie bezpieczeństwa.
Kroki wsadowego sprawdzania plików .htaccess

1. Ustaw informacje użytkownika HestiaCP
W HestiaCP każda subdomena public_html Ścieżka do katalogu wygląda zazwyczaj następująco:
/home/用户名/web/子域名/public_html/.htaccess
Dlatego musimy znać Twoją nazwę użytkownika HestiaCP i domenę główną.
2. Pisanie skryptów Bash
Ten skrypt będzie przeglądał listę podanych przez Ciebie subdomen i sprawdzał public_html Czy katalog istnieje? .htaccess plik.
Przykład skryptu:
#!/bin/bash
# 设置HestiaCP用户名和主域名
USER="youruser"
DOMAIN="example.com"
# 子域名前缀列表
SUBDOMAINS="af sq am ar hy az eu be bn bs bg ca ceb ny zh-tw co hr cs da nl en eo et tl fi fr fy gl ka de el gu ht ha haw iw hi hmn hu is ig id ga it ja jw kn kk km ko ku ky lo la lv lt lb mk mg ms ml mt mi mr mn my ne no ps fa pl pt pa ro ru sm gd sr st sn sd si sk sl so es su sw sv tg ta te th tr uk ur uz vi cy xh yi yo zu"
# 遍历每个子域名
for SUB in $SUBDOMAINS
do
FULL_DOMAIN="$SUB.$DOMAIN"
HTACCESS_PATH="/home/$USER/web/$FULL_DOMAIN/public_html/.htaccess"
echo "检测 $FULL_DOMAIN 的 .htaccess 文件:"
if [ -f "$HTACCESS_PATH" ]; then
echo "✅ 存在: $HTACCESS_PATH"
else
echo "❌ 不存在: $HTACCESS_PATH"
fi
echo "-------------------------------------"
done
echo "全部子域名检测完毕!"
3. Nadaj skryptowi uprawnienia do wykonywania
Po napisaniu skryptu zapisz go jako check_htaccess.sh, a następnie uruchom następujące polecenie, aby nadać mu uprawnienia do wykonywania:
chmod +x check_htaccess.sh
4. Uruchom skrypt
Uruchom skrypt, aby sprawdzić wszystkie subdomeny .htaccess dokument:
./check_htaccess.sh
Szczegółowa analiza scenariusza
Definiowanie zmiennych
USER: Twoja nazwa użytkownika HestiaCP.DOMAIN: Twoja główna nazwa domeny.SUBDOMAINS:Lista subdomen, które chcesz wykryć.
Przechodzenie przez subdomeny
- Przez
forPrzejrzyj poddomeny. - struktura
public_html/.htaccessPełna ścieżka do pliku.
- Przez
Wykryć
.htaccessCzy plik istnieje?if [ -f "$HTACCESS_PATH" ]; thenSprawdź czy plik istnieje.- Jeżeli istnieje, wyświetl „✅ istnieje: ścieżka”.
- Jeżeli nie istnieje, wyświetl „❌ nie istnieje: ścieżka”.
Wyniki testów wyjściowych
- Wyniki wykrycia dla każdej subdomeny zostaną wyświetlone osobno.
- Po zakończeniu działania wyświetli się komunikat „Wykryto wszystkie subdomeny!”
Dlaczego ta metoda jest skuteczna?
✅ Testowanie wsadowe : Sprawdź wiele subdomen jednocześnie, bez konieczności ręcznego sprawdzania ich jednej po drugiej.
✅ automatyzacja:Możesz ustawić zadanie cron, aby sprawdzać regularnie .htaccess Istnienie pliku.
✅ Szybko i dokładnie:na podstawie Linux 的 -f Opcja pozwalająca dokładnie ustalić, czy plik istnieje.
podsumowując
Za pomocą tego skryptu powłoki Bash możesz łatwo sprawdzić zbiorczo wszystkie subdomeny w HestiaCP .htaccess Plik mający na celu zapewnienie, że konfiguracja SEO witryny nie zostanie utracona oraz poprawę bezpieczeństwa i stabilności witryny.
Jeśli posiadasz wiele subdomen, możesz spróbować, żeby nie żałować, gdy pewnego dnia okaże się, że strona ma jakiś problem!
Mamy nadzieję, że artykuł pt. „Jak wykrywać partie plików subdomen .htaccess za pomocą HestiaCP, aby uniknąć strat w zakresie SEO?” udostępniony na blogu Chen Weilianga ( https://www.chenweiliang.com/ ) będzie dla Ciebie pomocny.
Możesz udostępnić link do tego artykułu: https://www.chenweiliang.com/cwl-32640.html
