Muszę uruchomić wszystkie moje pliki .html jako pliki .php i nie mam czasu na zmianę wszystkich linków przed jutrzejszą prezentacją. Czy jest jakiś sposób na "zhackowanie" tego z moim serwerem Apache?Użycie .htaccess w celu uruchomienia wszystkich stron .html jako plików .php?
Odpowiedz
Tworzenie pliku .htaccess w katalogu głównym swojej stronie i dodać tę linię:
[Apache2 @ Ubuntu/Debian: użyj tej dyrektywy]
AddType application/x-httpd-php .html .htm
Lub z komentarz poniżej:
AddType application/x-httpd-php5 .html .htm
Jeśli twój PHP działa jako CGI (prawdopodobnie nie sprawy), należy wpisać zamiast:
AddHandler application/x-httpd-php .html .htm
Musiałem dodać "5" na końcu typu, aby działał, tj.'Aplikacja AddType/x-httpd-php5 .html .htm' (CentOS z PHP 5.3) – melat0nin
To nie działa dla mnie. To sprawia, że Firefox chce pobrać plik HTML i wyświetlić go. –
@LeeBlake Mam ten sam problem. Masz szczęście? –
Dla nikogo tam nadal występują problemy,
spróbować (mój hosting był od Godaddy i to jest jedyna rzecz, która sprawdziła się wśród wszystkich odpowiedzi tam.
AddHandler x-httpd-php5-cgi .html
In My GoDaddy Server następujący kod pracował
Options +ExecCGI
AddType application/x-httpd-php .php .html
AddHandler x-httpd-php5 .php .html
Myślę, że wspomnienie "Gojaddy" okrada cię z pierwszego miejsca. – Pacerier
Myślę, że to najlepszy sposób, aby uruchomić skrypt php na html i htm stron:
AddType application/x-httpd-php5 .html .htm
Normalnie należy dodać :
Options +ExecCGI
AddType application/x-httpd-php .php .html
AddHandler x-httpd-php5 .php .html
Howeve r dla GoDaddy dzielonego hostingu (php-cgi), trzeba dodać również te wiersze:
AddHandler fcgid-script .html
FCGIWrapper /usr/local/cpanel/cgi-sys/php5 .html
To działało również z hostem hostującym hosta. Dzięki. –
Używam Godaddy i to jest jedyny, który pracował dla mnie. inne albo nie działają, albo pobierają stronę HTML bez jej wyświetlania! – lKashef
Korzystanie @ podejście Marc-François Firefox skłoniło mnie, aby pobrać plik html
Wreszcie następujące pracuje dla mnie (przy użyciu obu):
AddType application/x-httpd-php .htm .html AddHandler x-httpd-php .htm .html
Można również użyć H lub Flaga T mod_rewrite wymuszająca wszystko.Pliki HTML być przetwarzane przez obsługi php:
używając H (Handler) Bandera:
RewriteEngine on
RewriteRule \.(html|htm)$ - [H=application/x-httpd-php5]
użyciu T (Type) flag:
RewriteEngine on
RewriteRule \.(html|htm)$ - [T=application/x-httpd-php5]
lub można dodać więcej rozszerzeń z zasadą wzór sepowany rurą |, że chcesz być przetwarzane przez obsługi php
ex:
RewriteRule \.(html|htm|txt|foo)$ - [T=application/x-httpd-php5]
powyższy przykład będzie zmienić typ MIME plików, które kończą się .html, .htm, .txt , .foo do php.
Uwaga: na niektórych serwerach będzie trzeba zmienić php5 do php dostać ten przykład do pracy w handler wyrażenie:
Zmień to
[T=application/x-httpd-php5]
do
[T=application/x-httpd-php]
Musisz dodać następujący wiersz do pliku konfiguracyjnego Apache:
AddType application/x-httpd-php .htm .html
Trzeba również dwie inne rzeczy:
Pozwól Overridding
W
your_site.conf
pliku (np pod/etc/apache2/mods-available
w moim przypadku), należy dodać następujące wiersze:<Directory "<path_to_your_html_dir(in my case: /var/www/html)>"> AllowOverride All </Directory>
Włącz Przepisz Mod
uruchomić to polecenie na komputerze:
sudo a2enmod rewrite
po każdym z tych etapów, należy ponownie uruchomić apache:
sudo service apache2 restart
AddHandler application/x-httpd-php .php .html .htm
// or
AddType application/x-httpd-php .php .htm .html
Proszę użyć linku [edit], aby wyjaśnić działanie tego kodu, a nie tylko podać kod, ponieważ wyjaśnienie może pomóc przyszłym czytelnikom. Zobacz także [odpowiedź]. [źródło] (http://stackoverflow.com/users/5244995) –
- 1. Przepisywanie w htaccess w celu dopasowania określonych rozszerzeń plików
- 2. htaccess: przekierowanie starej domeny i wszystkich stron do nowej domeny
- 3. Stopka HTML na dole wszystkich stron HTML wydrukowana w IE
- 4. Pakiet TestNG.xml w celu uwzględnienia wszystkich pakietów wszystkich plików
- 5. Przekierowanie htaccess .co.uk to .com dla wszystkich stron
- 6. Odmowa dostępu ze wszystkich w podkatalogu htaccess nie przesłania reguł plików w htaccess root
- 7. Dyrektywy php w .htaccess?
- 8. Użycie polecenia PIL w celu uczynienia wszystkich białych pikseli przezroczystymi?
- 9. Wykonywanie wszystkich plików PHP (rekursywnie)
- 10. Konwersja plików PDF na HTML w PHP?
- 11. Jak mogę nakazać Eclipse sprawdzanie poprawności plików HTML jako PHP?
- 12. Lista wszystkich plików w jednym katalogu PHP
- 13. Semantyczne adresy URL statycznych plików HTML z .htaccess i mod_rewrite
- 14. htaccess - użycie hasła LUB białej listy jako białej listy
- 15. Wymuszenie łącza WebView w celu uruchomienia Safari?
- 16. Awaria instalacji Mongodb w celu uruchomienia mongody
- 17. Manipuluj nagłówkami odpowiedzi PHP w pliku .htaccess?
- 18. Dodawanie javascript do wszystkich stron w OpenCart
- 19. . Htaccess deny plików w podfolderach
- 20. Ponowne użycie elementów HTML
- 21. Jak ustawić ramkę dla wszystkich stron
- 22. Jak przerobić .php na .html przy użyciu reguł .htaccess?
- 23. HTML Przycisk przekierowania stron
- 24. AddType w htaccess powoduje pobranie strony
- 25. Przekieruj do pliku php/html na błąd 404 z .htaccess
- 26. PHP - htaccess - output_buffering
- 27. Odmów dostępu do wielu plików .php z .htaccess?
- 28. Niestandardowe logowanie za pomocą htaccess za pośrednictwem HTML/PHP
- 29. Użycie "tego" jako funkcji?
- 30. podziały stron renderowania w słowie z HTML
Chociaż nie jest to bezpośrednia odpowiedź na twoje pytanie, użycie 'sed' lub dowolnego dobrego IDE pozwoli ci znaleźć i zastąpić cały katalog/projekt. Poza tym możesz łatwo zmienić nazwy plików w systemie Linux. – coreyward
Tak, ale jeśli zmienisz nazwy plików za pomocą sed, możesz uzyskać wiele uszkodzonych linków. Oczywiście możesz też spróbować zmienić wszystkie linki w swojej witrynie, ale są też linki z całego internetu, które mogą wskazywać na twoją stronę. –