2012-03-16 25 views
8

Trong trang web của tôi, tôi muốn thêm một chức năng để người dùng sử dụng tên người dùng của họ với tên miền.Bạn muốn tạo tên miền phụ động trong trình mã hóa?

Giống như trong người viết mã ngay bây giờ tôi muốn cung cấp cho người dùng sử dụng url của riêng họ để đăng nhập vào trang web và thực hiện các công cụ khác.

Đối với ví dụ:

i Muốn www.username.mysite.com/login hay www.username.mysite.com/category

vì vậy đây người dùng có thể đăng nhập với chứng chỉ của họ và thêm các thể loại. vì vậy tôi có hai bộ điều khiển trong trang web của tôi với thông tin đăng nhập và danh mục.

Vì vậy, cách thực hiện việc này bằng các tuyến đường Hoặc .htaccess.

+0

có thể trùng lặp của [Tạo tên miền phụ trên bay với .htaccess (PHP)] (http : //stackoverflow.com/questions/586129/create-subdomains-on-the-fly-with-htaccess-php) –

Trả lời

1

đây là giải thích về vấn đề của bạn tại đây. http://www.joehayes.org/setting-up-wildcard-dns-for-subdomains.html

Ok nếu bạn đã đọc giải thích trên liên kết, bạn sẽ biết rằng bạn nên chuyển hướng tất cả tên miền phụ của mình đến www trước tiên. trong tệp httpd.conf có định nghĩa máy chủ ảo chỉ chứa yourdomain.com để chuyển hướng tất cả yêu cầu đến DocumentRoot của bạn.

**ServerAlias yourdomain.com** 
ServerAdmin [email protected] 
DocumentRoot /home/yourdoma/public_html 
BytesLog domlogs/yourdomain.com-bytes_log 
ServerName www.yourdomain.com 
User yourdomain 
Group yourdomain 
CustomLog /usr/local/apache/domlogs/yourdomain.com combined 
ScriptAlias /cgi-bin/ /home/yourdomain/public_html/cgi-bin/ 

và bạn nên sửa đổi ServerAlias ​​ để * .yourdomain.com để lấy tất cả các tên miền phụ vào tài liệu gốc thư mục của bạn. thì bạn sẽ có thể mod_rewrite hoặc phân tích url uri của bạn để thành công việc này.

+0

Xin lỗi, không phải là câu trả lời đúng, những gì tôi cần. –

+0

ok, tôi chỉ muốn chỉ ra rằng cho dù bạn có quyền truy cập ssh vào máy chủ của bạn hay truy cập vào tệp httpd.conf hoặc khởi động lại máy chủ apache. –

+0

Không, tôi không có quyền truy cập. nhưng kết nối tạo tên miền phụ động với máy chủ là gì ?? –

1

Sử dụng mã này trong file vhost server:

<VirtualHost *:80> 
    DocumentRoot "/home/yourdoma/public_html/yourdomain" 
    ServerName yourdomain.com 
    ErrorLog "logs/yourdomain.local-error.log" 
    CustomLog "logs/yourdomain.local-access.log" common 
    <Directory "/home/yourdoma/public_html/yourdomain"> 
     AllowOverride All 
     Require all Granted 
    </Directory> 
</VirtualHost> 

<VirtualHost *:80> 
    DocumentRoot "/home/yourdoma/public_html/yourdomain" 
    ServerName dummy-host.yourdomain.com 
    ErrorLog "logs/yourdomain.com-error.log" 
    CustomLog "logs/yourdomain.com-access.log" common 
    ServerAlias *.yourdomain.com 
    <Directory "/home/yourdoma/public_html/yourdomain"> 
     AllowOverride All 
     Require all Granted 
    </Directory> 
</VirtualHost> 

và Đối CodeIgniter tập tin cấu hình của bạn:

$host = isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : ''; 
$schema = isset($_SERVER['REQUEST_SCHEME']) ? $_SERVER['REQUEST_SCHEME'].'://' : 'http://'; 
$spl_host = explode("mysite.com", $host); 
$subhost = ''; 
if (count($spl_host) == 2) { 
    $subhost = current($spl_host); 
} 

if($host == $subhost.'mysite.com') { 
    $config['base_url'] = $schema.$subhost.'mysite.com'; 
} else { 
    $config['base_url'] = $schema.$host; 
} 
+0

cũng kiểm tra video về điều này. https://youtu.be/518eRiSOTlY – Iftikhar

Các vấn đề liên quan