Trang web của tôi với khung PHP của riêng tôi cho phép có các url đẹp cho các trang:
About Us => https://www.myurl.com/about
Contacts => https://www.myurl.com/contacts
Nó hoạt động tốt trong thiết lập cục bộ Vagrant, nhưng một khi tôi tải trang web của mình lên Apache2 thì các trang web đó sẽ bị ném:
Không tìm thấy URL / about được yêu cầu trên máy chủ này
URL / danh bạ được yêu cầu không tìm thấy trên máy chủ này.
Có lẽ bởi vì ưu tiên của nó là tìm kiếm một tệp trong các thư mục "about" và "danh bạ" thay vì nghe /index.php
tệp xác định tuyến đường và tải chế độ xem cho khoảng hoặc các trang liên hệ.
Xem trong https://www.myurl.com
trang chủ hoạt động hoàn hảo, sự cố xảy ra với các trang được khai báo trong URI sauhttps://www.myurl.com/.....
Đây là tập tin .conf của tôi
ServerAdmin info@myurl.com
ServerName myurl.com
ServerAlias www.myurl.com
DocumentRoot /var/www/myurl.com/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.myurl.com [OR]
RewriteCond %{SERVER_NAME} =myurl.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
/var/www/myurl.com/public_html
có hai thư mục phụ about/
và contacts/
phải không? Tôi nghĩ rằng tệp cấu hình phải chi tiết hơn, cũng cần có các <Directory>
định nghĩa và, ngoài ra, bạn có thể tránh các quy tắc Rewrite cho tác vụ này. Tôi sẽ đăng cấu hình ưa thích của tôi cho trường hợp này.
about/
, contacts/
cấu hình trong /var/www/myurl.com/public_html/index.php
trang được thực hiện rằng: nếu người dùng truy cập url : myurl.com/about
, mã sẽ hiển thị mã html được lưu trữ trong/var/www/myurl.com/public_html/views/about-us.view.php
.conf
tệp máy chủ ảo của bạn .